ES6新特性的学习

1.let和var 的区别

let var
是在代码块内有效 是在全局范围内有效
只能声明一次 可以声明多次
不存在变量提升 会提升变量

2.const

const
声明一个只读的变量,声明之后不允许改变
如果是数组或对象,可以改变里面的属性

3解构

 let [a,b,c] = [1,2,3] //解构的基本用法

  let [a,[[b],[c]]]=[1,[[2],[3]]]//嵌套式用法

  let [a,,b]=[1,2,3] //忽略参数用法 a=1 b=3

  let [a,...b] = [1,2,3]//剩余用算符 a = 1 b=[2,3]

  let [a=1,b=2,c=3]=[]//解构默认值

4对象解构和数组解构基本用法相同

//语法
let {name,age} = {
	name:张xx,age:20
}
console.log(name,age) //张xx,20

5字符串模板(字符串拼接)
``字符串模板:基本用法${变量名}
优点:可以随意的换行,

let name = '张xx'let age = 20let str = `我叫${name},今年${age}岁`; 

关于字符串的一些操作

str.indexOf (要找的东西) 返回索引(位置) ,没找到返回-1
str.includes (要找的东西) 返回值 true/false
str.startsWith (检测东西) 字符串以什么开头
str.endsWith (检测东西) 字符串已什么结尾
str.repeat (次数) 重复字符串
str.padStart (整个字符串长度, 填充东西) 往前填充
str.padEnd (整个字符串长度, 填充东西) 往后填充

7 箭头函数

let show = ()=>{

return 1

}

console.log(show) // 1

注意:

  1. this问题, 定义函数所在的对象,不在是运行时所在的对象
  2. 箭头函数里面没有arguments, 用 ‘…’
  3. 箭头函数不能当构造函数。
    8 数组
    (1)循环方法
1.for(let i=0; i<arr.length; i++)

  2.while

  3.arr.forEach(val, index, arr) //代替普通的for循环

  4.arr.map()  //  非常有用,做数据交互  "映射" 注意:平时只要用map,一定是要有return

  5.arr.filter(): //过滤,过滤一些不合格“元素”, 如果回调函数返回true,就留下来

  6.arr.some(): //类似查找,  数组里面某一个元素符合条件,返回true

  7.arr.every(): //数组里面所有的元素都要符合条件,才返回true

  8.for....of....

    for(let val of arr){
    console.log(val);
    }

    arr.keys() //数组下标

    arr.entries()	//数组某一项

(2)数组方法
arr.find(): 查找,找出第一个符合条件的数组成员,如果没有找到,返回undefined

arr.findIndex(): 找的是位置, 没找到返回-1

arr.fill(填充的东西, 开始位置, 结束位置);

arr.indexOf(指定字符串,开始位置(可以不填,默认从头开始)) 某个指定的字符串值在字符串中首次出现的位置

arr.includes(要检测的值) 数组中是否包含指定值,包含true,不包含false

你可能感兴趣的:(ES6新特性的学习)