JS篇 undefined的由来
在<<Javascript 權威指南>>中,undefined常常被解釋為:對應的值的缺失,對應以下四種情況:
1. 無賦值 變量被聲明了,但沒有賦值時,就等于undefined。
2. 屬性不存在 引用對象中不存在屬性,該屬性的值為undefined。
3. 形參未賦值 調用函數時,應該提供的參數沒有提供,該參數等于undefined。
4. 函數無返回值 函數沒有返回值時,默認返回undefined。
實際上,undefined可以被當做除primitive原始類型和object類型之外的第三種類型:
window下的undefinded屬性為undefined類型;這個類型只有一個值:undefined;
null被當做object類型,是因為typeof null === "object";
而null instatnceof Object === false是因為null處于原型鏈的頂端,而不是Object.prototype原型節點的子節點;
typeof 通過primitive,object,undefined類型判斷 instanceof 通過原型鏈判斷
在<<Speaking Javascript>>中,描述了設計undefined原因:
1. 避免類型轉換上的錯誤:當因為編程疏忽時(聲明了變量,卻忘記給變量賦值,會引起異常)
Number(null) // 0 Number(undefined) // NaN Boolean(null) // false Boolean(undefined) // NaN
參考:
編程的細節之美——undefined與null的區別 http://www.tuicool.com/articles/B7FFzez
總結
以上是生活随笔為你收集整理的JS篇 undefined的由来的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 诛仙手游新物品幻灵石详细介绍 幻灵石在哪
- 下一篇: tkinter之输入框(Entry)