为什么push方法适用于对象?

时间:2016-12-19 17:48:45

标签: javascript

为什么"推送方法"与对象一起工作?这种机制如何运作在发动机下?

function MyArray() { }
MyArray.prototype = [];

var arr = new MyArray();
arr.push(1, 2, 3);
console.log(arr); // [1, 2, 3]  in Chrome

enter image description here

抱歉我的英语。谢谢!

1 个答案:

答案 0 :(得分:2)

<div class="locationdiv"> <p class="map2p"> <span style="font-weight:800; font-size:28px; font-family: 'Roboto', sans-serif;">Hong Kah Diabetes Education <br>& Care Centre</span> <br> <br>Blk 528 Jurong West St 52 <br>#01-353 Singapore 640528 <br> <br>Tel : (65) 6564 9818, (65) 6564 9819 <br>Fax: (65) 6564 9861 <br> <br>Opening Hours: <br>Monday-Friday 8.30am - 5.00pm <br>Saturday 8.30am - 12.30pm <br>Sunday Closed</p> <iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3988.7135200721114!2d103.71451791437465!3d1.3483820990165771!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x31da0fc328223963%3A0xe558feaadf0564e8!2sSouth+West+Diabetes+Education+and+Care+Centre!5e0!3m2!1sen!2ssg!4v1482145868140" width="390" height="285" frameborder="0" id="map2" style="border:0" allowfullscreen></iframe> </div>即使在Chrome中也会返回一个对象,并通过指定的Array使用prototypal inheritance的方法。 MyArray实例的结果仍然是对象,而不是数组。

MyArray