ES6基础总结

概念

EcmaScript6新的JavaScript标准 2015年推出 为了js更加快捷简单

变量声明

1.let 关键字 特性:

1.不允许重复声明;
2.块级作用域(局部变量)
3.不纯在变量提醒;
4.不影响作用域链;

2.const 关键字 特性;

1.const关键字用来声明变量
2.声明必须赋初始值
3.不允许重复声明
4.值不允许修改
5.标识符一般为大写
6. 块级作用域(局部变量)

var 关键字 特性:

1.全局作用域
2.函数作用域
3.没有 if switch for while do esle 作用域
4.会变量提升

解构

1.对象解构:
let node = {
    type:"node",
    name:"haha",
 }
 let {type,name} = node;
 console.log(type)//"node"
 console.log(name)//"haha"

注意:当解构赋值表达式的右侧(等号右边)的计算结果为null或者undefined时,会报出异常。因为任何读取nul或者undefined的斗湖导致运行时错误。

2.数组解构
let colors = ["red","green","blue"];
let [ , second] = colors;
console.log(second)//"green"

数组解构和对象解构比较相似,对象是根据key来检索取值,数组是根据位置来检索取值。

字符串ES6扩展方法

模板字符串(template string)是增强版的字符串,用反引号(`)标识。它可以当作普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量。
// 普通字符串
`In JavaScript '\n' is a line-feed.`

// 多行字符串
`In JavaScript this is
 not legal.`

console.log(`string text line 1
string text line 2`);

// 字符串中嵌入变量
let name = "Bob", time = "today";
`Hello ${name}, how are you ${time}?`

//模板字符串中还能调用函数
function fn(){
    return 'hello world'
}
`foo ${fn()} bar`
//foo hello world

字符串

1.遍历

1.for
2.for of

2.检测

1.indexOf lastindexOf 返回值下边|1
2.includes true | false
3.starsWith true | false
4.ends With true | false

3.填充

1.repeat (重复的次数)
2.padStart (填充的总位数 填充字符串)
3.padEnd (填充的总位数 填充字符串)

4.拼接

``+${}
+

数组

1.ES6数组的各种方法
1.forEach 函数

1.函数名.forEach(function(数组中一个元素的值){对这个值进行处理…})
2.数组名.forEach(test)test为方法名,不用加(),把函数引用传进去

2.map 方法

1.map()方法一定要有一个返回值,没有返回值的话就会返回一个undefined
2.map()方法的返回值是一个数组

3.filter 函数

1.filter可以返回一个新数组,也可以直接改变原数组

4.find 方法

find()方法只会找到第一个符合的,找到之后就会直接返回,就算下面还有符合要求的,也不会再找下去

5.every 方法

some()方法只要有一个满足就行,every()方法要所有的满足才可以,即some():一真即真,every():一假即假,跟逻辑运算符差不多

6.some 方法

some()方法只要有一个满足就行,every()方法要所有的满足才可以,即some():一真即真,every():一假即假,跟逻辑运算符差不多

7.reduce 方法

reduce(function(sum,number){…},0)要有两个参数,第一个参数一定要初始化

函数

1、函数:实现某种功能的程序模块

1.参数(形参):形式参数,占位符,在函数定义时没有数据
2.参数(实参):实在参数,在函数中调用使用,表示实际的数据
3.函数形参的默认值:在很多情况下,需要在使用函数的时候给定默认参数,在ES5标准中

function fun1(name='张三',age='30',cb){
    console.log(`${name},${age}`)
}
fun1()
fun1('王五',36)
 
/*输出:
张三,30
王五,36
*/
二,函数参数的不定参数

1.很多情况下,使用函数传参的时候,形参的数量是不固定的,这时候要获取参数值就会比较麻烦。在ES5中可以通过隐藏参数arguments来获取,此时会把所有参数放在arguments中

function fun(num,str,...rest){//...解构运算符   ...rest不定参数
    console.log(arguments);//代表函数的参数
    console.log(arguments[0])//每个函数都有一个arguments属性
    console.log(arguments[1]);//参数
    console.log(arguments[2]);
 
    console.log(rest)
}
fun(123,'西邮','长安南路',456,789)
 
/*输出:
[Arguments] { '0': 123, '1': '西邮', '2': '长安南路', '3': 456, '4': 789 }
123
西邮
长安南路
[ '长安南路', 456, 789 ]
*/
三,箭头函数1)若只有一个参数,则()是可以省略的

1.若只有一个参数,则()是可以省略的
2.若函数体当中只有一条语句,则{}也可以省略,并且这条语句默认带有return功能
3.用箭头函数后,就没有隐形的arguments参数
4.箭头语法最大的特点是有箭头"=>"符号
箭头函数:let/const 变量名字 = ([参数])=>{函数体语句(记得要return)}

let getName = (name)=> {
    return name
}
//箭头函数:let/const 变量名字 = ([参数])=>{函数体语句(记得要return)}
//(1)若只有一个参数,则()是可以省略的
//(2)若函数体当中只有一条语句,则{}也可以省略,并且这条语句默认带有return功能
//(3)用箭头函数后,就没有隐形的arguments参数
// let getName = name=> name
 
let n = getName('张三');
console.log(n)
 
/*输出:
张三
*/

函数参数

1.函数的默认参数基本使用方法

function test(x,y = "hello"){
	console.log("函数参数:",x,y);
}
test("winne");      //函数参数:winne hello
test("winne","hi"); //函数参数:winne hi

class 类
extends 继承
super 父构造函数 (要在所有的方法的最前面)
constructor 构造函数
this 指向实例
static 静态的
new Box()实例化类

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值