console.log(item))”."/> console.log(item))”.">
Rumah > Artikel > hujung hadapan web > Bagaimana untuk menukar tatasusunan pseudo kepada tatasusunan dalam ES6
Dalam ES6, kaedah from() jenis tatasusunan boleh digunakan untuk menukar tatasusunan pseudo kepada tatasusunan Kaedah ini boleh menukar objek seperti tatasusunan atau objek boleh dilalui kepada sintaks sebenar "Array. from(pseudo array object).forEache(item=>console.log(item))".
Persekitaran pengendalian tutorial ini: sistem Windows 7, ECMAScript versi 6, komputer Dell G3.
Ciri baharu ECMAScript6 - tatasusunan pseudo
Apakah itu tatasusunan pseudo: Jika semua kekunci objek adalah integer positif atau sifar dan mempunyai atribut panjang, maka objek ini Sama seperti tatasusunan, ia dipanggil tatasusunan pseudo.
Array pseudo biasa: objek argumen, kebanyakan set elemen DOM dan rentetan.
Contoh
let arrayLike = { "0": "a", "1": "b", "2": "c", "length": 3 }
Seperti objek tatasusunanSeperti di atas, ia mempunyai atribut panjang dan kuncinya juga turutan tertib.
Jadi anda boleh melintasi dan menanyakan panjangnya. Tetapi anda tidak boleh memanggil kaedah tatasusunan. Seperti kaedah push, pop dan lain-lain.
Sebelum ES6, terdapat pseudo-array biasa: argumen.
argumen juga kelihatan seperti tatasusunan, tetapi ia tidak mempunyai kaedah tatasusunan.
Sebagai contoh, arguments.push(1), ini pasti akan melaporkan ralat.
Cara menukar tatasusunan pseudo kepada tatasusunan dalam ES6
Dalam ES6, anda boleh menggunakan kaedah dari jenis Tatasusunan untuk menukar tatasusunan pseudo ke dalam tatasusunan.
Kaedah Array.from() digunakan untuk menukar dua jenis objek kepada tatasusunan sebenar:
1. Objek seperti tatasusunan boleh difahami sebagai "susunan semu"
2. Objek boleh dilalui (seperti rentetan)<button name="button">测试1</button> <br/> <button name="button">测试2</button> <br/> <button name="button">测试3</button> <br/> <script> //声明变量let变量,const常量 let btns=document.getElementsByName("button"); console.log("btns",btns);//得到一个伪数组 //此处出现异常:Uncaught TypeError:btns.forEach is not a function btns.forEach(item=>console.log(item)) </script> <script> Array.from(btns).forEache(item=>console.log(item))//将伪数组转换为数组 </script>Fungsi utama Array.from adalah untuk menukar tatasusunan pseudo dan objek boleh lalui kepada tatasusunan. Sebab mengapa ia mengatakan "fungsi utama" adalah kerana Array.from juga menyediakan 2 parameter untuk dilalui. Ini boleh memanjangkan pelbagai jenis permainan kecil.
let helper = { diff: 1, add (value) { return value + this.diff; // 注意这里有个 this } }; function translate () { return Array.from(arguments, helper.add, helper); } let numbers = translate(1, 2, 3); console.log(numbers); // 2, 3, 4Pengetahuan lanjutan: Tukar rentetan kepada tatasusunan
let msg = 'hello'; let msgArr = Array.from(msg); console.log(msgArr); // 输出: ["h", "e", "l", "l", "o"]【 Pengesyoran berkaitan :
tutorial video javascript, bahagian hadapan web]
Atas ialah kandungan terperinci Bagaimana untuk menukar tatasusunan pseudo kepada tatasusunan dalam ES6. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!