js Object和Array 原型与继承?

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的继承,那么对象与数组的关系是什么呀?数组是对象的实例?还是什么?求大神帮忙分析下

ibeautiful
浏览 829回答 2
2回答

拉莫斯之舞

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

杨__羊羊

javascript 没有类的概念,是基于原型的,所以Array 和 Object都是对象,Array算不上是Object的实例,只是Array原型链的继承Array.prototype.__proto__ ===Object.prototypevar arr = [1,2,3]arr instanceof Array //truearr instanceof Object //truetypeof arr //'object' ,返回的是object
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java