Fungsi: 1. Tukar nilai dua pembolehubah, sintaksnya ialah "[x,y] = [y,x];"; sintaks ialah "[senarai pembolehubah] = rentetan"; 3. Kembalikan berbilang nilai daripada fungsi, sintaks "[senarai pembolehubah]=fungsi"; dan seterusnya.
Persekitaran pengendalian tutorial ini: sistem Windows 7, ECMAScript versi 6, komputer Dell G3.
es6 memusnahkan tugasan
es6 membenarkan mengekstrak nilai daripada tatasusunan atau objek dan memberikan nilai kepada pembolehubah mengikut corak tertentu, yang dipanggil Destructuring Assignment.
Tugasan memusnahkan adalah mudah dan mudah difahami dalam penulisan kod, dengan semantik yang jelas, menjadikannya mudah untuk mendapatkan medan data dalam objek kompleks.
Model pemusnahan
Dalam pemusnahan, punca pemusnahan terletak di sebelah kanan ungkapan penetapan pemusnahan, dan sasaran pemusnahan adalah di sebelah kiri ungkapan yang merosakkan.
Peranan memusnahkan tugasan
1 Gunakan Tugasan Destructuring boleh menukar nilai dua pembolehubah tanpa bantuan pembolehubah ketiga
let x = 1; let y = 2; console.log('x:'+x, 'y:'+y); //x:1 y:2 //结构赋值 [x,y] = [y,x]; console.log('x:'+x, 'y:'+y); //x:2 y:1
var [a,b,c,d,e] = "hello"; console.log(a); // h console.log(b); // e console.log(c); // l console.log(d); // l console.log(e); // o
//Fungsi hanya boleh mengembalikan satu nilai, letakkannya dalam tatasusunan atau objek dan mengembalikannya.
function example(){ //返回一个数组 return [1,2,3] } let [a,b,c]= example(); console.log('a:'+a,'b:'+b,'c:'+c); //a:1 b:2 c:3 function example2(){ //返回一个对象 return { name:'kang+', age:20 } } let {name,age} = example2(); console.log('name:'+name,'age:'+age); //name:kang+ age:20
//参数是一组有次序的值 function f([x,y,z]){ console.log('x:'+x); console.log('y:'+y); console.log('z:'+z); } f([1,2,3]); //参数是一组没有次序的值 function f({x,y,z}){ console.log('x:'+x); console.log('y:'+y); console.log('z:'+z); } f({z:3, x:2, y:1});
let jsonData = { number:01, status:'200', data:[{person:'kang+',age:20}] } // 获取json数据 let {number,status,data,data:[{person,age}]} = jsonData; console.log('number:'+number); //number:1 console.log('status:'+status); //status:200 console.log(data) // [{…}] console.log('person:'+person); //person:kang+ console.log('age:'+age); //age:20
function Person(name,age,school = 'xiyou'){ this.name = name; this.age = age; this.school = school; } var son = new Person('kang+',20); console.log(son) // {name: "kang+", age: 20, school: "xiyou"}
[Cadangan berkaitan:
Map 结构原生支持 Iterator接口,配合变量的解构赋值获取键名和键值就非常方便。 var map = new Map(); map.set('name','kang+'); map.set('age','20'); for(let [key, value] of map){ console.log(key + ' is ' + value); } name is kang+ age is 20 获取键名 var map = new Map(); map.set('name','kang+'); map.set('age','20'); for(let [key] of map){ console.log(key); //name age } // 获取键值 var map = new Map(); map.set('name','kang+'); map.set('age','20'); for(let [,value] of map){ console.log(value); // kang+ 20 }
bahagian hadapan web]
Atas ialah kandungan terperinci Apakah peranan memusnahkan tugasan dalam es6. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!