为了账号安全,请及时绑定邮箱和手机立即绑定

js Object和Array 原型与继承?

js Object和Array 原型与继承?

ibeautiful 2019-02-04 09:05:30
Array.prototype.toString = function(){              console.log("我被重写了");            }                    var arr = [1,2,3];            arr.toString();                        console.log(Object.prototype.toString.call(arr));数组的toString 被重写后直接调用数组的方法,会执行重写后的方法,而对象原型上的toString则不会被修改,我们知道Array也是对象,Array的方法可以来自对象 Object的继承,那么对象与数组的关系是什么呀?数组是对象的实例?还是什么?求大神帮忙分析下
查看完整描述

2 回答

?
拉莫斯之舞

TA贡献1820条经验 获得超10个赞

首先通俗的讲一切皆为对象,当你用instanceof操作符去判断是返回值会是true ,但是你typeof array是会是数组

查看完整回答
反对 回复 2019-03-16
?
杨__羊羊

TA贡献1943条经验 获得超7个赞

javascript 没有类的概念,是基于原型的,所以Array 和 Object都是对象,Array算不上是Object的实例,只是Array原型链的继承
Array.prototype.__proto__ ===Object.prototype
var arr = [1,2,3]
arr instanceof Array //true
arr instanceof Object //true

typeof arr //'object' ,返回的是object


查看完整回答
反对 回复 2019-03-16
  • 2 回答
  • 0 关注
  • 827 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信