前端基础(一)—— ES6
0. 前端技术栈简介
1. ES6
ECMAScript 6.0,是浏览器脚本语言的规范,js语言是实现。
Shift+!快捷生成文档
特性
1. var和let
1) var 声明的变量会越狱, let 声明的变量不会越狱
{
var a = 1;
let b = 2;
}
console.log(a); //1
console.log(b); //ReferenceError:b is not defined
2)var可以声明多次,let不能多次声明同一个变量
3)var 存在变量提升,let不存在变量提升
console.log(a); //Undefined √可以打印
var a = 1;
console.log(b); //ReferenceError:b is not defined
let b = 2;
4)const声明常量(只读变量):声明之后不允许改变;一旦声明必须初始化,否则报错
2. 解构表达式
1)数组解构:
let arr = [1,2,3];
let [a,b,c] = arr;
console.log(a,b,c)
2)对象解构:
const person = {
name: "Amy",
age: 21,
language: ['java', 'js', 'css']
}
const name = person.name; //以前获取
const {
name: abc, age, language } = person;
console.log(abc,age,language) //abc:别名
3. 字符串优化
1)新API
includes()
startsWith()
endsWith()
2)字符串模板
-
多行字符串(反引号)不用拼串,保留空格
let ss = `sdasdasd sdasdasdas`
-
字符串插入变量和表达式:变量名写在${}中,也可以写JS函数表达式
let info = `我是${
abc},今年${
age+10}了`;
- 字符串调用函数
function fun(){
return "This is a function"
}
let info = `我是${
abc},今年${
age}了我想说${
fun}`;
4. 函数优化
1) 函数参数默认值
//ES6以前,无法给一个函数参数设默认值,只能采用变通写法
function add0(a,b){
//判断b是否为空,为空赋值1
b = b || 1;
return a+b;