針對謂詞函數測試值 x 表示檢查 x 是否被評估為對於特定條件有效。如果 x 遵循特定條件,我們需要使用任何名為「fn」的函數並將其作為函數參數傳遞,對 x 執行一些操作。否則,我們需要傳回 x 本身的值。
使用者可以依照下列語法根據謂詞函數測試值 x 並在 JavaScript 中傳回 fn(x) 或 x。
let result = predicate(x) ? operation(x) : x;
在上面的語法中,我們使用三元運算子來針對 predicate() 函數測試值,並根據 predicate() 函數的傳回值傳回運算元(x) 或 x 值。
在下面的範例中,我們建立了 opera() 函數,該函數傳回數字的平方。 predicate() 函數檢查 x 的值是否大於 5,並根據條件傳回 true 或 false。
在將值賦給結果變數時,我們檢查 x 是否通過 predicate() 函數的測試。如果是,我們將 operation() 函數的回傳值指派給「result」變數;否則,x 本身。
<html> <body> <h3>Testing a value x <i> against predicate function and returns fn(x) or x </i> in JavaScript</h3> <div id = "content"> </div> <script> let content = document.getElementById("content"); let x = 10; function operation(x) { return x * x; } function predicate(x) { return x > 5; } let result = predicate(x) ? operation(x) : x; content.innerHTML = "The original value of x is " + x + " and the result is " + result + ".<br>"; let result2 = predicate(3) ? operation(3) : 3; content.innerHTML += "The original value of x is " + 3 + " and the result is " + result2 + ".<br>"; </script> </body> </html>
我們在下面的範例中建立了各種謂詞和運算函數。 operation1() 函數傳回除以 2 後的值。 operation2() 函數透過將負數轉換為正數來傳回值。
使用模運算符,predicate1() 函數檢查 x 是否能被 2 整除。 predicate2() 函數檢查 x 是否小於 0。
我們可以將謂詞和運算函數作為測試函數的參數傳遞,並在測試函數內執行它們。透過這種方式,我們可以針對不同的謂詞函數測試 x 的值,並使用不同的運算函數對 x 執行不同的任務。
<html> <body> <h3>Testing a value x <i> against predicate function and returns fn(x) or x </i> in JavaScript</h3> <div id = "content"> </div> <script> let content = document.getElementById("content"); function operation1(x) { return x / 2; } function predicate1(x) { return x % 2 == 0; } function operation2(x) { return Math.abs(x); } function predicate2(x) { return x < 0; } function test(x, predicate, operation) { content.innerHTML += "The original value of x is " + x + "<br>"; let res = predicate(x) ? operation(x) : x; content.innerHTML += "The value of x after the test is " + res + "<br>"; } test(6, predicate1, operation1); test(-6, predicate2, operation2); </script> </body> </html>
使用者學會了根據謂詞函數測試 x 的值,並根據謂詞函數的回傳值傳回 fn(x) 或 x。使用者需要做的就是使用三元運算子。在條件部分使用謂詞函數。如果條件成立,則傳回運算函數計算出的值;否則,傳回 x 本身的值。
以上是如何在 JavaScript 中針對謂詞函數測試值 x 並傳回 fn(x) 或 x?的詳細內容。更多資訊請關注PHP中文網其他相關文章!