js(3)——数组方法——函数——解构赋值

《JavaScript权威指南》读后笔记2 ———— 表达式与运算符 ———— 2018-04-23

         目录

  1. 数组方法
  2. 函数:属性、方法、构造函数
  3. const 、let、var
  4. 解构赋值

1. 数组方法

  • join()
  • reverse()
  • sort()
  • concat()  :a=[''ant','cat'];a.concat(4,3);  结果为:[ant,cat,4 ,3]
  • slice(开始位置,结束位置—可选):索引从0开始;返回本身的值。
  • splice() 
1 // splice(插入或删除起始位置,删除元素个数—可选)
2 var a=[1,2,3,4,5,6,7,8];
3 a.splice(4); //返回[5,6,7,8],a是[1,2,3,4]
4 a.splice(1,2); //返回[2,3],a是[1,4]
5 
6 // splice()前两参数指定需要删除的数组元素,紧随的任意个数参数指定了需要插入到数组的元素
7 var b=[1,2,3,4,5];
8 b.splice(2,0,'a','b');  // 返回[],b是[1,2,'a','b',3,4,5]
9 b.splice(2,2,[1,2],3);  //返回['a','b'],b是[1,2,[1,2],3,3,4,5]
  • push() 、pop()
  • unshift() 、shift()
  • toString() 、toLocaleString()
  • ECMAScript 5中的数组方法 
     1 // forEach()、map()、filter()、every()、some()、reduce()、reduceRight()、indexOf()、lastIndexOf()
     2 
     3 // forEach()从头至尾遍历数组,为每个元素调用指定函数
     4 // map()将调用的数组的每个元素传递给指定的函数,并返回一个数组,它包含该函数的返回值
     5    a=[1,2,3];
     6    b=a.map(function(x){return x*x;}); //b是[1,4,9]
     7 // filter() 返回的数组元素是调用的数组的一个子集
     8    a=[5,4,3,2,1];
     9    small=a.filter(function(x){return x<3;}); //[2,1]
    10 // every()、some()是数组的逻辑判定:它们对数组元素应用指定的函数进行判定,返回true或false。
    11    a=[1,2,3,4,5];
    12    a.every(function(x){return x<10;}) ;//true:every相当于数学中的“值对所有”
    13    a.some(function(x){return x%2===0;}) //true:some相当于数学中的“存在即可”,这里意思是a中含有偶数值即可
    14 // reduce()、reduceRight()使用指定的函数将数组元素进行组合,生成单个值(reduceRight按索引从高到低处理数组)
    15    var a=[1,2,3,4,5];
    16    var sum=a.reduce(function(x,y){return x+y;},0); //15,数组求和,reduce(执行化简操作的函数,传递给函数的初始值—可选—省略时为数组第一个元素作为初始值) 
    17 // indexOf()、lastIndexOf()搜索指定值的索引

2. 函数:属性、方法、构造函数

 属性:length、prototype

 方法:

  • call()、apply() ,可以将这两个看做是某个对象的方法,通过调用方法的形式来简介调用函数。
  • bind():ECMAScript 5新增
  • toString()

 构造函数:Function()

3. 类和模块

4.

  •   const 常量:不能重复定义,重复定义的话后面重复的定义地方会报错。由于JS中没有块级作用域,常量会被提前至函数定义的顶部。const是保留字。
  •   let,JS 1.7针对JS缺少块级作用域的短板增加的关键字。let不是保留字。使用时需手动加入版本号<script type="application/javascript; version=1.8">
  •   通过let声明的变量只属于就近的花括号括起来的语句块;
  •   通过var声明的变量在函数内都是可用的。

5. 解构赋值

  • 右侧为数组

 let [x,y] = [1,2] ;  //等价于let x=1 , y=2 ;

 [x,y] = [y,x] ; //交换两个变量的值 

  • 右侧为对象

参考文章:

本文为自己知识点搜索整理,若有侵权麻烦留言告知,可删除本文章。谢谢(* ̄︶ ̄)

猜你喜欢

转载自www.cnblogs.com/cjuan/p/8920820.html