有人能給我一些關於 jmp 中的glue 和 if 之間的區別的啟發嗎? 我很困惑。
多謝!
非常感謝傑夫! 您的回答讓我對以後如何使用JMP有了清楚的認識!
膠水()和如果()幾乎完全不相關,因此很難對它們進行比較。
膠水
老實說,您可以忽略 Glue() 並成為非常成功的 JSL 程式設計師。所以,如果這讓您感到困惑,請不要擔心。
JSL 是一種函數式語言。 也就是說,JSL 中的所有內容都是函數。 JMP 中的某些函數具有運算符形式。
例如,給變數賦值的函數是分配(a,b) ,它將 b 的值賦給 a。有一種使用 = 符號的運算符形式:
a=b
將表達式組合在一起形成可以計算的函數是 Glue(),如下所示:
Glue(Assign(a,b), Add(c,d))
Glue() 的運算子形式是分號(;),以下與上面等值:
Assign(a,b);
Add(c, d)
如果
在任何程式語言中,您都需要建構來做出決策。 在 JSL 中,與其他語言一樣,這些是條件函數。
If() 至少需要三個參數:
我發現透過在公式編輯器中查看它的原型來理解 If() 最容易。

注意那裡的第一個“expr”。 這是要測試的條件,也是第一個參數。 第二個參數「then 子句」是條件為真時要計算的表達式。 第三個參數是“else 子句”,即條件不成立時要計算的表達式。
在公式編輯器之外,它看起來像:
If( a == "some value",
Show( "True" ),
Show( "False" )
);
因此,這測試了 a 等於“某個值”的條件,如果是,則顯示“True”,如果不是,則顯示“False”。
每個子句可以包含多個語句,並用分號 (;) 分隔。
我希望這有助於消除一些困惑。
如果您還有其他問題,請告訴我們。
“If()”函數的結構如下:
If( condition,
run this if the condition is true
,
run this if the condition is false
)
一個例子是
If( :sex == "F",
Show("This is a Female")
,
Show("This is a Male")
)
現在,「黏合」角色開始發揮作用,如果在 true 或 false 部分中,需要執行多個語句,則需要將這些語句「黏合」在一起以表示 true 或 false 部分是一個完整的項目。因此,如果需要執行 Show("This is a Female") 和 Gender = "Female" ,則需要將語句「黏合」在一起
If( :sex == "F",
Show("This is a Female");
Gender = "Female"
,
Show("This is a Male")
)