<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>对象的解构赋值</title>
<script src="../../../vendor/traceur.js"></script>
<script src="../../../vendor/bootstrap.js"></script>
<script type="text/traceur">
var { name, age } = { name: "Conan", age: 28 };
console.log(name); //Conan
console.log(age); //28
--------------------------------------------------
var { name, age, id } = { id: "007", name: "Conan", age: 28 };
console.log(name); //Conan
console.log(age); //28
console.log(id); //007
--------------------------------------------------
var { person_name, person_age, person_id } = { id: "007", name: "Conan", age: 28 };
console.log(person_name); //undefined
console.log(person_age); //undefined
console.log(person_id); //undefined var { name: person_name, age: person_age, id: person_id } = { id: "007", name: "Conan", age: 28 };
console.log(person_name); //Conan
console.log(person_age); //28
console.log(person_id); //007 let object = { first: "Hello", last: "World" };
let { first: firstName, last: lastName} = object;
console.log(firstName); //Hello
console.log(lastName); //World
------------------------------------------------------
var { x = 3 } = {};
console.log(x); //3 var { x, y = 5 } = { x: 1 };
console.log(x); //1
console.log(y); //5 var { x, y } = { x: 1 };
console.log(x); //1
console.log(y); //undefined var { x, y=5 } = { x: 1 ,y:9};
console.log(x); //1
console.log(y); //9 var { message: msg = "You Are A Person!" } = {};
console.log(msg); //You Are A Person! var { x = 3 } = { x: undefined };
console.log(x); //3 var { y = 3 } = { y: null }; //null优先级最高
console.log(y); //null
---------------------------------------------------- var x;
{x} = { x: 1 }; //报错,需要加上小括号
console.log(x); //1 ------- var x;
({x} = { x: 1 });//已声明变量的解构赋值
console.log(x); //1
-----------------------------------------------------
let { sin, cos, tan, log } = Math;
console.log(sin(Math.PI/6)); //0.49999999999999994
console.log(Math.sin(Math.PI/6)); //0.49999999999999994 console.log(cos(Math.PI/6)); //0.8660254037844387
console.log(Math.cos(Math.PI/6)); //0.8660254037844387 console.log(tan(Math.PI/6)); //0.5773502691896257
console.log(Math.tan(Math.PI/6)); //0.5773502691896257 console.log(log(Math.PI/6)); //-0.6470295833786549
console.log(Math.log(Math.PI/6)); //-0.6470295833786549 </script>
</head>
<body> </body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>字符串的解构赋值</title>
<script src="../../../vendor/traceur.js"></script>
<script src="../../../vendor/bootstrap.js"></script>
<script type="text/traceur">
//字符串被转换成了一个类似数组的对象。类似数组的对象都有一个length属性,因此还可以对这个属性解构赋值。 const [ 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 const { length: len } = "Hello";
console.log(len); //5 const { length } = "Hello World!";//转换成对象,寻找字符串对象的length属性
console.log(length);//12
</script>
</head>
<body> </body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>函数参数的解构赋值</title>
<script src="../../../vendor/traceur.js"></script>
<script src="../../../vendor/bootstrap.js"></script>
<script type="text/traceur">
function sum([x, y]) {//传的是数组
return x + y;
};
console.log(sum([1, 2])); //3
-------------------------------------------
function fun ({x = 1, y = 2} = {}) {
return [x, y];//输出数组
};
console.log(fun({x: 100, y: 200})); //[100, 200]
console.log(fun({x: 100})); //[100, 2]
console.log(fun({})); //[1, 2]
console.log(fun()); //[1, 2]
--------------------------------------------
function fun ({x, y} = { x: 1, y: 2 }) {
return [x, y];
}; console.log(fun({x: 100, y: 200})); //[100, 200],{x, y} = { x: 1, y: 2 }没有执行
console.log(fun({x: 100})); //[100, undefined],{x, y} = { x: 1, y: 2 }没有执行
console.log(fun({})); //[undefined, undefined],{x, y} = { x: 1, y: 2 }没有执行
console.log(fun()); //[1, 2],{x, y} = { x: 1, y: 2 }执行了
</script>
</head>
<body> </body>
</html>

es68对象的解构赋值的更多相关文章

  1. ES6 对象的解构赋值

    对象的解构赋值 解构不仅可以用于数组,还可以用于对象. let {foo,bar} = {foo:"aaa",bar:"bbb"}; console.log(f ...

  2. ES6变量的解构赋值(二)对象的解构赋值

    前面我们知道,数组的结构赋值需要按顺序进行赋值, let [a,,c] = [,,] console.log(a); console.log(c);//3 let [a,b] = [1];consol ...

  3. es6☞对象的解构赋值

    变量必须与属性同名 let {name, age} = {name: 'wang', age: 22}; console.log(name, age); //wang 22 let {name} = ...

  4. ES6学习-5 解构赋值(2)对象的解构赋值

    啥也不说,先举个栗子: 1 let { myname, myage } = { myage: 18, myname: "郭郭" }; 2 console.log(myname) / ...

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

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

  6. 关于ES6 的对象解构赋值

    之 前写了关于ES6数组的解构 现在 go on ; 解构不仅可以用于数组,还可以用于对象: 对象的解构和数组有一个重要的不同.数组的元素是按次序排列的,变量的取值是由他的位置决定的:而对象的属性没有 ...

  7. es6之变量的解构赋值

    es5中通常我们声明变量都是以下的方式: var a = 10; var b = 20; var c = 30; //或者 var a = 10,b = 20,c = 30; //或者 var arr ...

  8. ES6 - Note2:解构赋值

    ES6的解构赋值就是利用模式匹配从按照一定模式的数组或者对象中提取值赋值给变量. 1.数组的解构赋值 在ES6以前,变量的赋值是直接指定的,以后可以这么来写,如下所示 let [a,b,c] = [1 ...

  9. ES6(二)解构赋值详解

    详解一下之前的解构赋值 ①解构赋值中的"..." let [a,...b]= [1]; b // [] ...代表变量b去匹配剩余的所有元素返回一个数组 ,匹配不到时返回[] // ...

随机推荐

  1. [poj 2773] Happy 2006 解题报告 (二分答案+容斥原理)

    题目链接:http://poj.org/problem?id=2773 题目大意: 给出两个数m,k,要求求出从1开始与m互质的第k个数 题解: #include<algorithm> # ...

  2. js 实现 水仙花数

    水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身.(例如:1^3 + 5^3+ 3^3 = 153) <!DOCTYPE html><html ...

  3. Kali linux 2016.2(Rolling)里Metasploit的OpenVAS

    不多说,直接上干货! 关于OpenAVS的概念,我这里不多赘述. 前提得,大家要先安装好OpenVAS!!! 我们都知道,BT5中已经预先安装好了OpenVAS网络漏洞扫描工具,我们只需进行一些配置即 ...

  4. vue 实现 点击取消监控内容是否发生修改 若修改提示 是否需要保存

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. NodeJS学习笔记 (23)模块机制-module

    https://github.com/chyingp/nodejs-learning-guide

  6. BZOJ 3626 LCA(离线+树链剖分+差分)

    显然,暴力求解的复杂度是无法承受的. 考虑这样的一种暴力,我们把 z 到根上的点全部打标记,对于 l 到 r 之间的点,向上搜索到第一个有标记的点求出它的深度统计答案.观察到,深度其实就是上面有几个已 ...

  7. 紫书 习题 10-5 UVa 1213(01背包变形)

    这里就是01背包多了一维物品个数罢了 记得不能重复所以有一层循环顺序要倒着来 边界f[0][0] = 1 #include<cstdio> #include<vector> # ...

  8. 如何使用Java创建Excel(.xls 和 .xlsx)文件 并写入数据

    1,需要依赖的jar包, <!-- POI(operate excel) start --> <!-- the version of the following POI packag ...

  9. 【模板】2-SAT 问题(2-SAT)

    [模板]2-SAT 问题 题目背景 2-SAT 问题 模板 题目描述 有n个布尔变量 \(x_1\)​ ~ \(x_n\)​ ,另有m个需要满足的条件,每个条件的形式都是" \(x_i\) ...

  10. JavaScript【1】(数据类型)

     JS系列教程(数据类型)[1]