1.map 函数的使用
map函数在调用时 里面的回调函数有三个参数 (item,index,arr)[数组key值,数组下标,被遍历的数组],在循环的过成功 回调函数内部 可以进行 return ,此时将会返回一个新的数组
例:
let num=[10,20,30,40,50]
let nums=num.map(function(n){
return n*2;
})
console.log(nums);
输出nums 为 [20,40,60,80,100]
2. filter 函数的使用
filter 是es6的过滤器,在计算机语言中,都会有自己专属的过滤器,里面的回调函数参数与 map 一样,但是不同的是filter 函数里面 return 是Boolean 值 (true,false)当返回值为true时,则会将目前的item值push 进一个新的数组
let num=[10,20,30,40,50,100,200,300]
let nums=num.filter(function(n){
return n<100;
});
console.log(nums);
输出nums---> [10,20,30,40,50]
回调函数里面可以写条件判断
3. es6 的 set 对象
// set 对象有点特殊,传统的对象是
let obj = {
name: 'wh',
age: '18'
} // 这是传统的对象形式
// 创建一个set对象
let mySet = new Set();
// 添加数据
mySet.add('a')
// mySet ----> {'a'}
set 对象更像是一个数组的样子,但是他们有下标,只有值,是一个典型的hash 模式的数据
image.png
3.1set对象的方法
let set = new Set([1, 2, 3, 4, 4]);
// 添加数据 5
let addSet = set.add(5);
console.log(addSet); // Set(5) {1, 2, 3, 4, 5}
// 删除数据 4s
let delSet = set.delete(4);
console.log(delSet); // true 此处返回值是个boolean 表示 是否删除成功
// 查看是否存在数据 4
let hasSet = set.has(4);
console.log(hasSet); // false
// 清除所有数据
set.clear();
console.log(set); // Set(0) {}
4.reduce()函数是聚合函数。reduce中有两个参数,一个function(),一个是自己设置的
num=[10,20,30]
let conter=num.reduce(function(prevaluer,n){
return prevaluer+n;
},0)
console.log(conter);
最后返回的是60
将这个过程解析:
第一次:prevaluer=0(这个0是reduce()中的第二个参数), n=10, return 10
第二次:prevaluer=10(上一次中返回的内容), n=20, return 30
第三次: prevaluer=30, n=30 ,return 60
5.var let const 的区别
- var 不是es6的语法,但是我们学习js 中第一个接触到的声明一个变量的方式,var 的特点 是 可以用它声明很多个变量
var a = 1;
var b = 2;
var c = 3;
var a = 5;
// 在这里同一个变量可以重新被声明,不过js代码正常的执行顺序是从上到下,从左到右,因此此时的a 值为5 ,覆盖了最初的a为1,
- let 是es6的语法,它与var 的却别是 同一个名字的变量 只能let 一次,如果别声明了两次,则会报错,代码无法执行
let a = 1;
let b = 2;
let a = 3; // 此时会报错
3.const 也是es6的语法 他与var 和 let 有共同点也有 区别, const 与let 一样 同一个变量名只能声明一次,如果两次 则会报错,不过他有自己的特性,我们用var 和 let 声明的叫做变量,即声明的变量的值是可以改变的
const 声明的 叫做常量 即 声明的常量必须要有初始值,并且值无法改变,改变就会报错
const a = 1;
a = 2; // 此时会报错,常量的值不允许改变