时间:2021-05-25
ES6 强制开启严格模式
作用域
•var 声明局部变量,for/if花括号中定义的变量在花括号外也可访问
•let 声明的变量为块作用域,变量不可重复定义
•const 声明常量,块作用域,声明时必须赋值,不可修改
// const声明的k指向一个对象,k本身不可变,但对象可变function test() { const k={ a:1 } k.b=3; console.log(k);}test()解构赋值
{ let a, b, 3, rest; [a, b, c=3]=[1, 2]; console.log(a, b);}//output: 1 2 3{ let a, b, 3, rest; [a, b, c]=[1, 2]; console.log(a, b);}//output: 1 2 undefined{ let a, b, rest; [a, b, ...rest] = [1, 2, 3, 4, 5, 6]; console.log(a, b, rest);}//output:1 2 [3, 4, 5, 6]{ let a, b; ({a, b} = {a:1, b:2}) console.log(a ,b);}//output: 1 2使用场景
变量交换
获取多个函数值
获取多个函数返回值
{ function f(){ return [1, 2, 3, 4, 5] } let a, b, c; [a,,,b] = f(); console.log(a, b);}//output: 1 4{ function f(){ return [1, 2, 3, 4, 5] } let a, b, c; [a, ...b] = f(); console.log(a, b);}//output: 1 [2, 3, 4, 5]对象解构赋值
{ let o={p:42, q:true}; let {p, q, c=5} = o; console.log(p ,q);}//output: 42 true 5获取json值
{ let metaData={ title: 'abc', test: [{ title: 'test', desc: 'description' }] } let {title:esTitle, test:[{title:cnTitle}]} = metaData; console.log(esTitle, cnTitle);}//Output: abc test以上这篇基于ES6作用域和解构赋值详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了ES6数组与对象的解构赋值。分享给大家供大家参考,具体如下:数组的解构赋值基本用法ES6允许按照一定的模式,从数组和对象中提取值,对变量进行赋值,
本文实例讲述了ES6知识点整理之对象解构赋值应用。分享给大家供大家参考,具体如下:ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(D
本文实例讲述了ES6函数和数组用法。分享给大家供大家参考,具体如下:1.对象的函数解构ES6为我们提供了这样的解构赋值使在前后端分离时,后端返回来JSON格式的
本文实例讲述了ES6知识点整理之数组解构和字符串解构的应用。分享给大家供大家参考,具体如下:ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称
变量的解构赋值ES6中允许按照一定模式,从数组和对象中提取,对变量进行赋值。数组的解构赋值var[a,b,c]=[1,2,3];a//1;b//2;c//3;上