JavaScript 充滿了小秘密,當你使用它們時,它們會讓你感覺自己像個巫師? ♂️。
讓我們來探索其中的一些。
1。 「Void」運算子的魔力:為什麼它不只適用於函數!
您可能看過 void 在 void(0) 或 javascript:void(0) 等上下文中使用,但您是否知道它的作用比您想像的要多得多? ?
JavaScript 中的 void 運算子對運算式求值,但總是傳回未定義的值。它通常用於停止不需要的頁面刷新(尤其是連結中的 href 屬性),但這裡有一個很酷的技巧? :您可以使用它來停止函數的任何回傳值。
範例:停止函數傳回任何內容:
function surprise() { console.log("This function does not return anything."); return 42; } const result = void surprise(); console.log(result); // undefined
透過使用void,我們可以防止surprise()的回傳值被指派給result。當您想要做一些事情來消除其副作用而不擔心回傳值時,這非常有用。
2。 Double Bang (!!):將任何內容轉換為布林值
當然,Boolean() 將值轉換為 true 或 false,但是雙感嘆號 (!!) 是許多開發人員不知道的快捷方式。第一個!否定該值,第二個 !再次對其取反-有效地將其轉換為布林值。這絕對是秘密武器! ?
這是一個有趣的例子:
const name = "Alice"; const hasName = !!name; console.log(hasName); // true
您可以使用此技巧快速檢查變數是否為“truthy”或“falsy”(例如,字串是否不為零,或者數字是否不為零? ) .
3。 JavaScript 的 eval() 函數:謹慎使用!
您可能以前聽說過 eval(),大多數人像躲避瘟疫一樣避開它,因為它在運行時評估程式碼字串,如果使用不當,可能會導致安全問題⚠️。但如果以受控、安全的方式使用,它可以成為動態執行的強大工具。
這是一個奇怪但很酷的範例:動態評估字串內的程式碼!
const x = 10; const y = 20; const result = eval('x + y'); console.log(result); // 30
謹慎使用它 ⚖️ — eval() 應該小心處理,尤其是在處理使用者輸入時。
4。符號類型的隱藏力量:創造獨特的鍵
符號是 JavaScript 最少使用但最有趣的功能之一。它們是唯一和不可變,通常用於為物件屬性建立「隱藏」鍵。當您需要確保屬性名稱不會意外地與另一個名稱衝突時,符號就是您的秘密武器。 ?
符號可以使用Symbol()創建,並保證是唯一的:
const uniqueKey = Symbol("myUniqueKey"); const obj = { [uniqueKey]: "This is a secret value" }; console.log(obj[uniqueKey]); // "This is a secret value"
JavaScript 充滿了隱藏的技巧和強大的功能,可以大大增強您的工作並提高效率。
繼續探索這些「神奇」的 JavaScript 功能,很快您就會成為真正的 JavaScript 精靈! ✨?
如果你還知道其他的小技巧,歡迎在留言中分享! ?
以上是JavaScript 秘訣:成為程式設計奇才!的詳細內容。更多資訊請關注PHP中文網其他相關文章!