日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

JS篇 undefined的由来

發布時間:2023/12/19 综合教程 30 生活家
生活随笔 收集整理的這篇文章主要介紹了 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的由来的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。