Mashup Builder > 函數 > 運算式
運算式
運算式函數是一個非視覺小器具,可用來計算 JavaScript 運算式。您可以編寫 JavaScript 運算式來驗證、計算、轉換及比較混搭中的資料。
使用參數選項為函數建立新參數。您可以設定每個參數的資料類型與預設值。函數會使用參數來儲存資料值。您可以建立參數,以繫結來源中的資料 (例如混搭中的內容欄位與資料服務)。所有參數都會作為可繫結內容列在函數的「參數」部份下。
您可以使用「輸出基礎類型」選項為這些參數選取輸出資料類型。資料比較運算式會傳回 BOOLEAN 輸出。計算或字串操作會傳回 NUMBER 或 STRING 資料類型。請確定 Output 內容的目標小器具支援輸出基礎類型。
運算式欄位可讓您定義 JavaScript 程式碼。您可以定義算術、比較與規則運算式。
算術運算式
簡單運算式 - 使用簡單運算子來執行加法、減法、乘法與除法運算。例如:
(Parameter1 + Parameter2) / Parameter3 可傳回 Parameter1 與 Parameter2 的總和除以 Parameter3 的值。
複雜運算式 - 使用函數來執行諸如指數、平方根和自然對數等計算。
Math.pow(Parameter1, Parameter2) 可傳回 Parameter1 的 Parameter2 次冪。
比較運算式
可以使用所有 JavaScript 比較運算子來比較輸入參數中的資料。
規則運算式
運算式函數支援規則運算式的 JavaScript 標記法。可以使用規則運算式,透過下列語法來驗證及篩選輸入資料。
/<expression>/.test(<parameter>)
<expression> - 所要評估的規則運算式。
test() - 將指定資料參數與運算式進行比較的方法。
<parameter> - 要評估之資料的參數名稱。
/^(?:\d{3}\-){2}\d{4}$/.test(phoneNumber)
^ - 字串的開頭。
(?:\d{3}\-){2} - 匹配三個數字數位,後跟破折號,並重複兩次。(###-###-)
\d{4} - 匹配單一數位並重複四次。(####)
$ - 字串的結尾。
記錄 JavaScript 例外
當 JavaScript 運算式傳回錯誤時,會發生例外。您可以使用 TW.log.error 方法來記錄例外。在下列範例中,由於未定義函數,因此會發生例外:
try {
undefinedFunction();
}
catch (e){
TW.log.error("The function does not exist: " + e);
}
* 
在執行時間期間會記錄錯誤。按一下頂部工具列上的「顯示/隱藏記錄」,可顯示或隱藏 Mashup Builder 記錄。
運算式函數選項
您可以設定下列配置選項:
「描述」- 設定函數的描述。
「參數」- 指定函數的自訂參數。
「運算式」- 要計算的 JavaScript 運算式。
「自動評估」- 當輸入參數資料發生變更時,自動評估運算式。
「根據第一個值觸發」- 當傳入第一個值時,計算 JavaScript 運算式。當傳入第二個值時,不會計算運算式。
「資料變更類型」- 控制何時觸發已變更事件。
「輸出基礎類型」- 運算式輸出的資料類型。
建立運算式函數
1. 「函數」面板上,按一下 「新建函數」對話方塊即會開啟。
2. 從下拉清單中選取「運算式」
3. 輸入函數名稱,然後按一下「下一步」
4. 「運算式」下,輸入要評估的 JavaScript 運算式。
5. 新增資料輸入參數:
a. 按一下「新增參數」
b. 輸入參數名稱。
c. 輸入預設值與工具提示,然後選取參數基礎類型。
6. 「輸出基礎類型」下拉清單中選取資料類型。
7. 按一下「完成」
函數即會新增到「運算式」類別下的「函數」面板中。
內容
運算式函數包含下列內容。
內容
描述
基礎類型
預設值
可繫結?(Y/N)
可當地語系化?(Y/N)
Evaluate
用來評估運算式的可繫結服務。
n/a
n/a
Y
N
Changed
可繫結內容,用來在變更資料時觸發事件。
n/a
n/a
Y
N
Output
已評估運算式的輸出。您可以直接在運算式欄位中設定對此屬性的繫結。欲設定繫結,請鍵入
output=<>
n/a
n/a
Y
N