转换方式:Array.prototype.slice.call(arrayLike)
附:(http://www.jianshu.com/p/f8466e83cef0)
首先Array.prototype.slice.call(arrayLike)的结果是将arrayLike对象转换成一个Array对象。所以其后面可以直接调用数组具有的方法。譬如
Array.prototype.slice.call(arrayLike).forEach(function(element,index){ //可以随意操作每一个element了 })
解析点1:Array.prototype.slice表示数组的原型中的slice方法。注意这个slice方法返回的是一个Array类型的对象(这句话很多分析的文章没有点破,我就问了凭什么非得是slice啊?原因就在这)。splice行不行呢?Array.prototype.splice.call(arrayLike,0)这种形式也可以。只要返回的是原数组就可以。当然,那种写法更省事一目了然。
解析点2