ES6笔记
let 声明变量
1.变量不能重复声明
2.块儿级作用域 全局 函数,eval
3.不存在变量提升
4.不影响作用域链
const声明常量
1.一定要赋初值
2.一般常量使用大写(潜规则)
const A=100;
console.log(A);
3.常量的值不能修改
SHCOOL='WENLI'
4.块儿级作用域
{
const P='EW'
}
console.log(P);
5.对于数组和对象的元素修改,不算做对常量的修改,不会报错
const Te=['ww','QQ','WX']
Te.push('ME')
console.log(Te);
数组一般用const
ES6引入新的声明字符串的方式[``] ‘’ “”
1.声明
// ES6引入新的声明字符串的方式[``] ‘’ “”
// 1.声明
let str=`我是一个字符串哦`
console.log(str,typeof str);
2.内容中可以直接出现换行符
let s = `<ul>
<li>1</li>
<li>2</li>
</ul>`
console.log(s);
// 3.变量拼接
let o='大白'
let out=`${o}是我最喜欢的动漫`
console.log(out);
箭头函数
ES6允许使用[箭头] (=>)定义函数
1.this是静态的,this始终指向函数声明时所在作用域下的this的值
function getName(){
console.log(this.name);
}
let getName2=()=>{
console.log(this.name);
}
设置window 对象的name属性
window.name='大白'
const s={
name:'bighero'
}
// 直接调用
getName()
getName2()
// call方法调用
getName.call(s)
getName2.call(s)
2.不能作为构造函数实列化对象
let Person=(name,age)=>{
this.name=name;
this.age=age
}
let me=new Person('big',30)
console.log(me);
3.不能使用arguments变量
let fn=()=>{
console.log(arguments);
}
fn(1,2,3)
4.箭头函数的简写
a.省略小括号,当形参有且只有一个的时候
let add=n=>{
return n+n;
}
console.log(add(9));
b.省略花括号,当代码体只有一条语句的时候,此时return必须省略
而且语句的执行结果就是函数的返回值
let pow=(n)=>n*n;
console.log(pow(3));
箭头函数适合与this无关的回调,定时器,数组的方法回调
箭头函数不适合与this有关的回调,事件回调,对象的方法
ES6允许给函数赋值初始值
1.形参初始值 具有默认值的参数,一般位置要靠后(潜规则)
function add(a,b,c=10){
return a+b+c;
}
let re=add(1,2)
console.log(re);
扩展运算符
[…] 扩展运算符能将【数组】转换为逗号分隔的【参数序列】 -->
// 1.数组的合并
const kk=['happy','big']
const ww=['大笔','开心']
const aa=kk.concat(ww)
console.log(aa);
const ss=[...kk,...ww]
console.log(ss);
// 2.数组的克隆
const s=['w','S','H'];
const sancopy=[...s];
console.log(sancopy);
// 3.将伪数组转为真正的数组
const divs=document.querySelectorAll('div');
const divArr=[...divs];
console.log(divArr);
Symbol
创建Symbol
let s=Symbol();
console.log(s,typeof s);
let s2=Symbol('大白')
let s3=Symbol('大白')
Symbol.for 创建
let s4=Symbol.for('da')
let s5=Symbol.for('da')
不能与其他数组进行运算
// let re=s+100
// let re=s>100
// let re=s+s
数据类型
// USONB you are so niubility
// u undefined
// s string symbol
// o object
// n null number
// b boolean
symbol属性