在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ JavaScript的instanceof問題?

JavaScript的instanceof問題?

instanceof 檢測一個對象A是不是另一個對象B的實例的原理是:查看對象B的prototype指向的對象是否在對象A的[[prototype]]鏈上。那

"".__proto__===String.prototype
true
"" instanceof String
false
String.prototype明明在“”的原型鏈上 為什么是false
回答
編輯回答
玩控

因為 "" 并不是對象,而是原始數據類型。

typeof "" === "string"
2017年3月5日 12:41
編輯回答
故人嘆

對字符串字面量進行點操作時回轉換成string實例吧

2018年1月6日 11:00
編輯回答
薔薇花

問題的根源出在第一句. "" 字面字符串是原始類型, 沒有屬性和方法. 所以 javascript 會有一個行為叫 autobox 來把原始對象臨時的轉為相應的包裹對象.

"".__proto__===String.prototype

這里實際是這樣的

new String("").__proto__ === String.prototype
2017年2月22日 10:15