今天在知乎上
ihu.com/question/24692840/answer/345252713看到為預設形參的處理辦法:
functionfun(name)
如果呼叫這個函式時沒有傳入實參,則name就是undefined,這樣name就會被賦 'join' 這個值,這樣不久皆大歡喜了嗎?
事實是沒你想的那麼簡單:這樣做帶來的***是會修改arguments物件(別忘了形參(parameter)和arguments物件是蜜汁同步的),當你修改形參時像eslint等**檢查工具都會檢測出來來看修改形參會帶來什麼後果:
functionfoo(a,b,c)
return;}
console.log(foo('linwei',20,'student')); //
你看,本來要輸出
結果輸出了截然不同的結果。
那怎麼算乙個比較好的解決方案呢?來看babel是怎麼處理的:
functionfn()
它乾脆將值賦給乙個新宣告的區域性變數,這樣不就可以擺脫這種蜜汁同步嗎?個人感覺這算比較好的解決方案了。
選擇器竟然有這麼多!!!w w
慚愧 做了這麼長時間的前端 其實也就半年多吧哈哈 平時用到的選擇器都是id 類 標籤,最多用到屬性和子選擇器,到今天才知道平時用到的這些都是css選擇器,竟然還有jq選擇器,css選擇器和jq選擇器之間竟然還有這麼多區別,彷彿發現了寶藏,啊哈哈 廢話不多說,經過一番查閱資料,自己總結如下,如有錯誤,...
手機裡竟然有這麼多感測器!終於都搞懂了
隨著技術的進步,手機已經不再是乙個簡單的通訊工具,而是具有綜合功能的可攜式電子裝置。手機的虛擬功能,比如互動 遊戲 都是通過處理器強大的計算能力來實現的,但與現實結合的功能,則是通過感測器來實現。本文就為大家整理了手機中常見的感測器,幫助大家了解其原理和用途。一 光線感測器 原理 光敏三極體,接受外...
通過指標形參修改實參的值2
注意 圖示使用的位址只是假設的,並不是真正的記憶體位址,只是說明原理 上次說到的是修改基本型別的變數,這次來說修改指標變數的值 原因還是和以往一樣,函式只是改變了a的指向,並沒有影響到p 既然p是乙個變數,那麼要改變它就要通過傳遞它的位址找到它,然後修改記憶體資料,修改程式為 可以看到,成功改變了p...