如下图, 为什么没办法查看Array的__proto__呢? 是因为某些原因被隐藏了么?
还想多问一下, 每次写完语句之后的undefined是什么? 返回值么? 这块的undefined该怎么理解呢?
如下图, 为什么没办法查看Array的__proto__呢? 是因为某些原因被隐藏了么?
还想多问一下, 每次写完语句之后的undefined是什么? 返回值么? 这块的undefined该怎么理解呢?
10 回答11.2k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
不同意楼上的说法。。。。
浏览器控制台,显示的是上一个表达式的返回值。
而对于数组a,浏览器控制台显示的是其 a[0] a[1] .. 这些属性。a["join"] 这样的属性是不显示的。
a.__proto__
本质上是一个数组,因此,不会显示 join 等属性。var a = 10;
这样的语句在 js 里面是变量声明和变量赋值,两句。在es标准中并没有写明在交互式的情况下这句的意义。那么浏览器碰到这句把其返回值当作 undefined 也没什么问题,毕竟不能写出
var a = (var b = 10)
这样的语句。