1.解构赋值-数组篇 //Destrcturing(解构)
//ES5
/*
var a = 1;
var b = 2;
var c = 3;
*/
//ES6
var [a,b,c] = [1,2,3];
console.log(b);

//demo2
let [
foo,
[
[bar],
base
]
] = [
1,
[
[2],
3
]
];

console.log(bar);//2
console.log(base);//3

//demo3
let [,a,] = [1,2,3];
console.log(a);//2

//demo4
let [zero,...j] = [0,1,2,3,4]; //注意是三个.
console.log(j); //[1,2,3,4]
//demo5
let [a,b] = [1];
console.log(a); //1
console.log(b); //undefined

//demo6 不完全解构
let[a,[b],c] = [1,[2,3],4];
console.log(b); //2
console.log(c);//4

//demo7 制定默认值
var [temp = 'jewave'] = [];
console.log(temp);//'jewave'

// var [temp='jewave'] = ['xiang'];
// var [p,q = 'aaa'] = ['bbb',undefined] 【'bbb','aaa'】
// var [temp] = 1; Iterator接口之非遍历结构报错 var [temp]= undefined;报错

//demo8  Iterator接口之可遍历结构

let [a,b,c] = new Set(['x','y','z']);

console.log(b); // 'y'

function*  fibs() {//指针函数

  let a = 0;

  let b = 1;

  while (true) {

    yield a;

    [a,b] = [b,a+b];

  }

};

var [fir,sec,thi,fou,fif,six] = fibs();

console.log(six); //5

(2)ES6解构赋值-数组篇的更多相关文章

  1. 【ES6 】ES6 解构赋值--数组解构赋值

    定义 ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构 数组的解构赋值 以前,为变量赋值,只能直接指定值. let a = 1; let b = 2; let c = 3; ...

  2. (4)ES6解构赋值-字符串篇

    字符串的解构赋值 let [a,b,c,d,e] = 'Apple'; console.log(a); //A console.log(b); //p console.log(c); //p cons ...

  3. (5)ES6解构赋值-函数篇

    函数参数的解构赋值 function sum(x, y) { return x + y; } sum(1,2); //解构赋值 function sum([x, y]) { return x + y; ...

  4. (3)ES6解构赋值-对象篇

    对象的解构赋值(可以不按顺序,但是key必须一样否则为undefined) //demo1 var {name,age} = { name: "Jewave", age:26 }; ...

  5. ES6—解构赋值

    1.什么是解构赋值 ES6允许按照预定的模式,从数组.对象中提取值,对变量进行赋值. 我们直接用例子说明.    2. 数组的解构赋值 数组传统的变量赋值:      var arr=[1,2,3]; ...

  6. ES6解构赋值

    前面的话 我们经常定义许多对象和数组,然后有组织地从中提取相关的信息片段.在ES6中添加了可以简化这种任务的新特性:解构.解构是一种打破数据结构,将其拆分为更小部分的过程.本文将详细介绍ES6解构赋值 ...

  7. es6 解构赋值

    ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). 关于给变量赋值,传统的变量赋值是这样的: var arr = [1,2,3];//把数组的值 ...

  8. 关于ES6-{块级作用域 let const 解构赋值 数组 字符串 函数的扩展 箭头函数}

    关于ES6 块级作用域 任何一对花括号({})中的语句集都属于一个块,在块中声明的变量在代码块外都是不可访问的,称之为块级作用域,ES5以前没有块级作用域 let let 是ES6新增的声明变量的一种 ...

  9. 简单看看es6解构赋值

    哎,我真的是太难了,今天就被这个解构赋值(也可以叫做析构,貌似析构是在c++中的,所以我这里叫做解构赋值吧)弄的我很烦,本来以为很容易的,结果还是弄了好久...就总结一下解构吧! 1.解构的基本使用 ...

随机推荐

  1. hdu--1072--Nightmare(bfs回溯)

    Nightmare Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total S ...

  2. java类的继承,多态,抽象类与接口

    知识点梳理:     1,怎样定义自己的类. MyStarFrame,MyStarPanel 类中定义: (1)属性(数据),变量. (2)方法(函数),行为. (3)构造方法(特征,作用,何时被调用 ...

  3. .NET Exceptionless 日志收集框架本地环境搭建

    一.简介 Exceptionless 是一个开源的实时的日志收集框架,它可以应用在基于 ASP.NET,ASP.NET Core,Web Api,Web Forms,WPF,Console,MVC 等 ...

  4. HTML style基础2

    2017.0807 晴 style 样式实例 背景颜色  font-family: '.PingFang SC';">背景颜色 标题<h2 style=" font-f ...

  5. python基础===filter在python3中的用法

    l = range(0,20) def f(x): if x%2 == 0: return True print(list(filter(f,l))) #和python2的区别在于,要加一个list

  6. 诡异错误一: ValueError: embedded null character

    使用如下语句读取名为0_xx.txt 文件时,遇到错误  ValueError: embedded null character if __name__ == '__main__': fr = ope ...

  7. python 第三天

    函数 函数的定义 def 语句定义函数,格式如下: def sayHello(name): if(name): print('hello',name) else: print('hello,','I\ ...

  8. js基础语法习题补充

    输入三个整数,x,y,z,最终以从小到大的方式输出. <<script> var x=prompt("请输入数字") var y=prompt("请输入 ...

  9. 最新eclipse国内镜像站,比ustc等站点资源新。

    http://mirrors.neusoft.edu.cn/ 东软信息学院的镜像站,上面可以看到同步时间和状态很不错. 之前为了找最新的镜像站下载babel_language_packs r0.15. ...

  10. noip普及组2005 陶陶摘苹果

    陶陶摘苹果 描述 陶陶家的院子里有一棵苹果树,每到秋天树上就会结出10个苹果.苹果成熟的时候,陶陶就会跑去摘苹果.陶陶有个30厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试. 现在 ...