ES6—— 变量的结构赋值
变量的结构赋值。
基本概念:
本质上就是一中匹配模式,只要等号两边的模式相同,那么左边的变量就可以被赋予对应的值:
1、数组的结构赋值。
2、对象的结构赋值。
3、基本类型的结构赋值。
let [a,b,c] = [1,2,3]; console.log(a,b,c); ///输出 1,2,3
1、数组的结构赋值。
let [a, [ [b] , c] ] = [ 1,[ [ 2 ] , 3 ] ]; console.log(a,b,c); ///输出 1,2,3 let [ , , c]=[ 1,2,3] console.log(c) ///输出3 let [x] = []; console.log (x) ///输出 undefined ; let [ y =1 ] = []; console.log(y) ///输出 1
2、对象的结构赋值。
let {a,b} = {b:"bbb",a:"aaa"}
console.log(a,b) ///输出 aaa , bbb
let {a:b} = {a:1}
console.log(b) //输出 1
console.log(a) // 错误信息
3、基本类型的结构赋值。
let [a,b,c]="1234";
console.log(a,b,c,d); //输出 1234
let {length:len} = "miaov";
console.log(len) ///输出 5
let {tostring : ts}=1;
let {toString: bs}=true;
console.log(ts===Number.prototype.toString); //输出 true
console.log(bs===Boolean.prototype.toString); //输出 true
//null 和 undefined 不能进行结构赋值。
//let[a] = null
以上。
ES6—— 变量的结构赋值的更多相关文章
- ES6 变量的结构赋值
1.数组的解构赋值 a.基本用法:(‘模糊匹配’) let [a, b, c] = [1, 2, 3]; a b c b.嵌套数组结构例子: let [x, , y] = [1, 2, 3]; x y ...
- ES6 变量的结构赋值用途(实用技巧)
1.交换变量的值 let x=1; let y=2; [x,y]=[y,x];//x=2,y=1 2.从函数返回多个值 函数只能返回一个值,如果要返回多个值,只能将它们放在数组或者对象里返回,有了解构 ...
- JS ES6的变量的结构赋值
变量的结构赋值用户很多 1.交换变量的值 let x = 1; let y = 2; [x,y] = [y,x] 上面的代码交换变量x和变量y的值,这样的写法不仅简洁,易读,语义非常清晰 2.从函数返 ...
- ES6变量解构赋值
ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构ES6之前我们申明多个变量需要按照下面的方法: let l a=1; let b=2; let c=3; let d=4; ...
- ES6必知,变量的结构赋值。
对象和数组时 Javascript 中最常用的两种数据结构,由于 JSON 数据格式的普及,二者已经成为 Javascript 语言中特别重要的一部分. 在编码过程中,我们经常定义许多对象和数组,然后 ...
- 【ES6基础】let、const命令和变量的结构赋值
ES5声明变量(2):var .function ES6声明变量(6):var.function.let.const.import和class 1.let命令和const命令 (1)let和const ...
- es6变量解构赋值的用途
这里是我觉得es6解构赋值,在平时我们写js的时候非常有用,而且经常用到的地方,能简化我们的代码,让写代码简介优雅易读; 用途 1.交换变量的值,太方便了这逼,写法不仅简介而且一看就明白 let [x ...
- ES6变量解构赋值的用法
一.数组赋值(从数组中提取值,按照对应位置,对变量赋值) 1. 完全解构(变量与值数目相等) let arr = [1, 2, 3]; let [a,b,c] = arr; console.log(a ...
- ES6中的变量结构赋值
小编的上一篇文章更新了es6中关于变量定义的问题,这篇文章继续来一些实用的干货,关于数组.对象的赋值问题.特别是在前后端合作项目的时候,对后端数据的拆分,还有就是对于函数的默认值的惰性赋值问题.看完下 ...
随机推荐
- 基于 DirectX11 的 MMDViewer 03-渲染管线
准备工作: 开始搭建框架之前,你需要确保已经进行了 D3D 开发环境的搭建,相关教程可以阅读这篇文章.不了解 DirectX11 的人,这个作者有关 DirectX11 的教程最好阅读一下,虽然文章不 ...
- matching书页匹配例子
detect_brochure_pages.hdev *这个例子主要描述了从图片库中寻找有相应页面的那一页 *第一步中,不同的纸张页面用来做训练,最后创建好model *第二步,在未知的页面图片中 ...
- centos7 修改静态ip 和dns
1.修改对应网卡的IP地址的配置文件# vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 #描述网卡对应的设备别名,例如ifcfg-et ...
- 111. Minimum Depth of Binary Tree (Tree; DFS)
Given a binary tree, find its minimum depth. The minimum depth is the number of nodes along the shor ...
- c# ?和??
先看如下代码: string strParam = Request.Params["param"]; if ( strParam== null ) { strParam= ...
- Java-集合条件筛选
import java.lang.reflect.Field; import java.lang.reflect.Modifier; import java.util.ArrayList; impor ...
- http协议简析(一)
HTTP:hype-text transfer protocol,超文本传输协议,超文本(html)在网络间(电脑与电脑之间)传输过程中所遵循的一些规则. 两台电脑之间要实现数据传输的条件 1.两台电 ...
- VisualVM远程连接Tomcat(转)
转自:http://www.cnblogs.com/sunshine-2015/p/5547128.html VisualVM VisualVm是一个将很多JDK命令工具可视化的windows程序,直 ...
- Openssl rand命令
一.简介 rand命令用来产生伪随机字节,随机数字产生器需要一个seed,在没有/dev/srandom系统下的解决方法是自己做一个~/.rnd文件 二.语法 openssl rand [-out f ...
- [BAT] 通过批处理加host
echo. >> %WINDIR%\system32\drivers\etc\hosts & echo xxx.xxx.xxx.xx test_host >> %WIN ...