如何在 JavaScript 中測試函式是否接收了引數?
在 JavaScript 中測試函式是否接收了引數是編寫有效程式碼的重要部分。它允許您確保傳遞給函式的引數有效,並且格式正確,以便在函式內部使用。在本文中,我們將討論在 JavaScript 中測試函式是否接收了引數的不同方法。
讓我們瞭解一下“引數”這個術語。“引數”是在函式定義中命名的實體,它指定函式可以接受的引數。它在函式內部充當變數,並在函式被呼叫時將值傳遞給函式。
JavaScript 中引數的預設值為 undefined。這意味著如果未向函式提供任何引數,則函式的引數預設將具有 undefined 值。
在 JavaScript 中使用嚴格不等 (! ==)
JavaScript 中的嚴格不等 (!==) 是一種比較運算子,僅當兩個運算元的值不相等且型別相同才返回 true。與不等運算子相反,嚴格不等運算子始終將不同型別的運算元視為不同的。
語法
以下是嚴格不等 (!==) 的語法
x! == y
示例
在以下示例中,我們使用嚴格不等 (! ==) 來檢查函式是否接收了引數。
<!DOCTYPE html> <html> <body> <script> function checkPara(para) { if (para !== undefined) { return para; } } document.write(checkPara(23)+"<br>"); document.write(checkPara()); </script> </body> </html>
當指令碼執行時,它將在 Web 瀏覽器上生成包含兩個值的輸出,該輸出由執行檢查引數是否提供並返回值的指令碼觸發的事件觸發。
示例
考慮以下示例,我們使用typeof 運算子(檢查變數、物件或字面量的型別)來檢查引數是否不等於字串“undefined”,例如(typeof param!== "undefined")。如果它匹配條件,則引數將傳遞給函式。
<!DOCTYPE html> <html> <body> <script> function checkPara(para) { if (typeof para !== 'undefined') { return para; } } document.write(typeof undefined +"<br>"); document.write(typeof (() => {})+"<br>"); document.write(typeof null +"<br>"); document.write(typeof [] +"<br>"); document.write(typeof '' +"<br>"); document.write(typeof 0 +"<br>"); </script> </body> </html>
執行上述指令碼後,Web 瀏覽器將顯示指令碼中提到的引數型別,然後將它們傳遞給由執行指令碼觸發的事件啟用的函式。
示例
讓我們看一下下面的示例,我們檢查引數是否被使用。我們呼叫函式,傳遞 undefined,並將其視為引數的值。
<!DOCTYPE html> <html> <body> <script> function paratest(...test) { if (test.length) { return `exists`; } else { return `not exists`; } } document.write(paratest(123)+"<br>"); document.write(paratest(undefined)+"<br>"); document.write(paratest()+"<br>"); </script> </body> </html>
當指令碼執行時,事件被觸發,檢查條件,並顯示引數是否存在的值。
廣告