欧美亚洲中文,在线国自产视频,欧洲一区在线观看视频,亚洲综合中文字幕在线观看

      1. <dfn id="rfwes"></dfn>
          <object id="rfwes"></object>
        1. 站長(zhǎng)資訊網(wǎng)
          最全最豐富的資訊網(wǎng)站

          javascript怎么將對(duì)象轉(zhuǎn)換為數(shù)組

          javascript對(duì)象轉(zhuǎn)換為數(shù)組的方法:1、通過“[].slice.call(對(duì)象)”語句;2、使用“Array.from(對(duì)象)”語句,“Array.from()”方法可把可遍歷的對(duì)象轉(zhuǎn)換成數(shù)組(包括Set和Map數(shù)據(jù)結(jié)構(gòu))。

          javascript怎么將對(duì)象轉(zhuǎn)換為數(shù)組

          本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。

          一、把類似數(shù)組的對(duì)象轉(zhuǎn)換成數(shù)組

          1、什么是類似數(shù)組的對(duì)象

          比如:

          let arrayLike = {     '0':"z",     '1':"y",     '2':"k",     length:3 };

          本質(zhì)是有l(wèi)ength屬性,可以類似數(shù)組的獲取元素的方式arrayLike[0]、arrayLike[1]去獲取元素,也可以通過arrayLike.length獲取偽數(shù)組的長(zhǎng)度。

          常見的偽數(shù)組有通過DOM操作獲取的NodeList集合(document.querySelectorAll('p')),以及函數(shù)形參arguments。

          2、轉(zhuǎn)換方法

          方法一:通過[].slice.call(arrayLike)

          //獲取當(dāng)前dom的span組成的偽數(shù)組 let spanDomArr = document.querySelectorAll('span');   //通過數(shù)組的方法forEach遍歷spanDomArr let arr = [].slice.call(spanDomArr);   //因?yàn)閟panDomArr是偽數(shù)組,不支持?jǐn)?shù)組的forEach,所以需要先轉(zhuǎn)換成數(shù)組 arr.forEach(function(span){     console.log(span) });

          方法二:通過Array.from(arrayLike)

          //獲取當(dāng)前dom的span組成的偽數(shù)組 let spanDomArr = document.querySelectorAll('span');   //通過數(shù)組的方法forEach遍歷spanDomArr //因?yàn)閟panDomArr是偽數(shù)組,不支持?jǐn)?shù)組的forEach,所以需要先轉(zhuǎn)換成數(shù)組 Array.from(spanDomArr).forEach(function(span){     console.log(span) });

          二、延伸-Array.from()

          1、作用:

          1-可以將類似數(shù)組的對(duì)象轉(zhuǎn)換成數(shù)組;

          2-可以把可遍歷的對(duì)象轉(zhuǎn)換成數(shù)組(包括ES6新增的數(shù)據(jù)結(jié)構(gòu)Set和Map);

          2、實(shí)際應(yīng)用:

          1-如果當(dāng)前瀏覽器未部署此方法,可以使用Array.prototype.slice方法替代

          /*  *  方法名:objectToArray  *  功能介紹:把類似數(shù)組的對(duì)象、可遍歷的對(duì)象轉(zhuǎn)換成數(shù)組  *  參數(shù):obj-需要轉(zhuǎn)換的對(duì)象  */ var objectToArray = function(obj){    return Array.from ? Array.from(obj) : [].slice.call(obj); };

          2-如果參數(shù)是數(shù)組,則會(huì)返回一個(gè)一模一樣的數(shù)組

          Array.from(["z","y","k"]); //打?。篬"z","y","k"]

          3-僅有l(wèi)ength屬性的對(duì)象,無法通過array.from轉(zhuǎn)換

          javascript怎么將對(duì)象轉(zhuǎn)換為數(shù)組

          4-Array.from第二個(gè)參數(shù):用來對(duì)每個(gè)元素進(jìn)行處理,將處理后的值放入數(shù)組返回。

          let arrayLike = {     "0" : "z",     "1" : "y",     "2" : "k",     "length":3 }; Array.from(arrayLike,x=>x+'1'); //等同于 Array.from(arrayLike).map(x=>x+'1');  //打?。篬"z1","y1","k1"]

          贊(0)
          分享到: 更多 (0)
          網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)