摘要:數(shù)組化的一般方法第一種也是我們最常見的的方法,方法這種方法,其實(shí)就是引用方法注釋的部分為完全寫法,返回的就是一個(gè)數(shù)組對(duì)象。
數(shù)組化
瀏覽器中存在許多類數(shù)組對(duì)象,往往對(duì)類數(shù)組操作比較麻煩,沒有數(shù)組那些非常方便的方法,在這種情況下,就有了數(shù)組化方法。數(shù)組化的一般方法
1.第一種也是我們最常見的的方法,[].slice.call方法
function toArray(obj){ return [].slice.call(obj); //Array.prototype.slice.call(); }
Ps:這種方法,其實(shí)就是引用方法,注釋的部分為完全寫法,返回的就是一個(gè)數(shù)組對(duì)象。
2.第二種方法借鑒的是jq中的makeArray方法
function makeArray(obj){ var target = []; if(obj != null){ var i = obj.length; if(i = null || typeof obj === "string" || typeof obj === "function" || obj.setInterval){//如果是字符串、函數(shù)win對(duì)象,就把這個(gè)元素付給創(chuàng)建數(shù)組的第一個(gè)元素返回出去; target[0] = obj; }else{//如果不是以上那些元素,通過循環(huán)把obj中每一個(gè)賦給target的每一個(gè)索引; while(i){ target[--i] = obj[i]; } } } return target;
}
3.第三種方法
function $arr(ele) { if (!ele){ return []; } if (ele.toArray){ return ele.toArray(); } var length = ele.length || 0, results = new Array(length); while (length--){ results[length] = ele[length]; } return results; }
ps:還有大量的數(shù)組化方法,在這里我就不一一說明了,以后還會(huì)豐富這個(gè)數(shù)組化的說明。今天就到這吧