最新回答 / 依韵_宵音
直接 `arr.test` 是给arr这个数组(本质还是对象)新增了一个新属性,值为一个函数。而 `arr.__proto__.test` 则是加在arr的原型上的。类比面向对象的变成思想。假设一直狗会叫,那么这个方法是针对每一只具体的狗逐个去赋予它这个方法呢?还是直接在狗的这个抽象类对象上?不过在实例代码中用prototype的更多一些吧,不过和 `__proto__` 也是有区别的,简单可以说prototype是从Array上访问,而在具体以的某个 `[]` 上是不行。不过 `Array.proto...
2018-05-25
已采纳回答 / empty_back
上面不是写了arr.__proto__===Array.prototype。arr.__proto__.xxx这样写如果Array.prototype中有xxx方法就会重写xxx方法如果没有就会添加一个xxx方法,要是想不影响其它Array对象可以arr.a=xxx这样写
2017-09-05
已采纳回答 / 星跞
因为window下直接挂载的undefined可能会被用户或其他库的代码覆盖:<...code...>所以zepto作者在局部变量里定义了一个未初始化的undefined,因为未初始化,所以undefined变量值肯定为undefined,综上就是为了避免全局undefined变量被覆盖导致判断不准的问题。
2017-07-31