ECMAScript基础语法ES6入门

ES6是ECMAScript的缩写,是网页脚本语言的最新规范,JavaScript、Jscript、ActionScript都是它的实现。

let

let不能重复定义

let a=1;
let a=2;//报错

let只能在作用域内使用

{
	let a=1;
}
alert(a);//报错

const

const定义的变量不能修改

const a=1;
a=2;//报错

解构赋值

数组解构

es6可以快捷的取出数组中的元素:

let[luoxiang,zhangsan,lisi]=['罗翔','张三','李四']//let[名称可以任意,个数和数组长度需保持一致]
console.log(luoxiang,zhangsan,lisi);

对象解构

es6可以快捷的取出对象中的属性:

let user={name:'zhangsan',age:18}
let{name,age}=user;//let{这里的名称必须和user里的属性保持一致}
console.log(name,age);

个人总结没啥卵用,取数组元素array[index]或array[key]不香吗?取对象object.key不香吗?

模板字符串

es6提供模板字符串功能,使用转义符定义的字符串,可以像el表达式一样在字符串中使用变量,免去了拼接操作。
其次模板字符串还可以跨行,而不用拼接\n或者
,有点像python的三引号字符串。
栗子:

let name='zs';
let age=18;
let user=`姓名:${name},

	年龄:${age+10}`;
console.log(user);

声明对象

es6对声明对象进行了简化操作,在创建对象时,可以不指定key,默认key为变量名。

let a='aa';
let b='bb';
let user={a,b};
console.log(user);//{a: 'aa', b: 'bb'}

克隆对象

es6可以对对象进行克隆操作,使用{...要克隆的对象}即可将对象内部属性复制到新的对象中。
栗子:

let source={name:'张三',age:18};
let newobj={...source};
console.log(newobj);//{name:'张三',age:18}

可以同时克隆多个对象,并且会自动合并,如果有重复的属性,后面的会覆盖前面的。

let source1={name:'张三',age:18};
let source2={name:'李四',sex:'男'};
let newobj={...source1,...source2};
console.log(newobj);//{name: '李四', age: 18, sex: '男'}

箭头函数

es6提供了更简洁的声明匿名函数的方式,用于替换let aaa=function(){}操作。
语法:参数 => 函数体,和java8的Lambda函数一模一样。
栗子:
无参

let aaa=()=>'abc';
console.log(aaa());//abc

单个参数

let aaa=a=>'abc'+a;
console.log(aaa(333));//abc333

多个参数

let aaa=(a,b)=>a+b;
console.log(aaa(1,2));//3

你可能感兴趣的:(Web前端,javascript,前端,开发语言,ecmascript,es6)