instanceof 检测一个对象A是不是另一个对象B的实例的原理是:查看对象B的prototype指向的对象是否在对象A的[[prototype]]链上。那"".__proto__===String.prototypetrue"" instanceof StringfalseString.prototype明明在“”的原型链上 为什么是false
3 回答

慕丝7291255
TA贡献1859条经验 获得超6个赞
问题的根源出在第一句. ""
字面字符串是原始类型, 没有属性和方法. 所以 javascript 会有一个行为叫 autobox 来把原始对象临时的转为相应的包裹对象.
"".__proto__===String.prototype
这里实际是这样的
new String("").__proto__ === String.prototype
- 3 回答
- 0 关注
- 188 浏览
添加回答
举报
0/150
提交
取消