ES6变量与解构

ES6第一讲

      • 1. 变量声明
      • 2.解构(解构把对象或者数组按一定规则解析为单独变量)
        • 1.解构数组
        • 2.解构对象
      • 3.字符串方法
        • ES5新增
        • ES6新增

1. 变量声明

- let声明变量
1.let声明的变量是局部变量,在一对{}中有效
2.let不能重复声明
3.let不会变量提升(js在执行时会预编译,会把所有的变量提升在代码的最前面并赋初值undinfine)

if(true){
	var a = 15;
	let b = 37;
}
console.log(a);
console.log(b);

var 声明的变量在if外能访问到,let声明的变量是局部变量只能在{}访问

- const声明常量
1.声明必须赋值
2.不能修改(值类型) ==> 数字 字符串 布尔
3.建议变量名大写

const MY_HOST = ['www.baidu.com','www.tmall.con'];
MY_HOST.push('www.jd.com');
MY_HOST[0] = 'www.qq.com';
console.log(MY_HOST);

2.解构(解构把对象或者数组按一定规则解析为单独变量)

1.解构数组

- 交换变量

let a = 18;
let b = 20;
[b,a] = [a,b]

- 跳过

let arr = [1,3,5,7,9];
let [,a,,b] = arr;

- 剩余

let arr = [1,3,5,7,9];
let [a,...b] = arr;

- 默认值

 let arr = [1,3];
 let [a,b,c=100] = arr;

- 字符串

 let [a,b,c,d] = '沙雕总裁';

- 实现浅拷贝(赋值)

var arr = [1,3,5];
var arr1 = [...arr];

2.解构对象

- 对象解构没有顺序

 var obj = {name : '阿正',age : 18,weight: 180};
 let {weight,name,age} = obj;

- 剩余值

 let {weight,...rest} = obj;

- 默认值

 let {name,eye=2} = obj;

- 复制

 var obj1 = {...obj};

3.字符串方法

ES5新增

- trim()
此方法用来删除字符串开头和末尾空格

 var str = '      我爱   我的   祖国      ';
 console.log(str.trim());
 console.log(str.trimLeft());
 console.log(str.trimRight());

- repeat()
重复

var str = '我爱你三千遍';
console.log(str.repeat(100));

ES6新增

- for of
for in用于对象的可访问属性的遍历,for-in 读取键名,适合处理对象
for of用于读取可迭代属性的value,for-of 读取键值
- includes()
此方法用来检测字符串中是否包含指定字符,返回值为布尔值
- startsWith()
此方法用来检测字符串中是否以指定字符开头,返回值为布尔值
- endsWith()
此方法用来检测字符串中是否以指定字符结尾,返回值为布尔值
- 字符串模板
用一对反撇号包裹

var name = '小张';
console.log( `大家好,我的名字是${name}`);

你可能感兴趣的:(ES6,es6,javascript)