1.concat()和join()

 concat()是连对两个或两个数组的方法,直接可以将数组以参数的形式放入 

  

 join()是将数组中的所有元素放入一个字符串中,通俗点讲就是可以将数组转换成字符串
  

2.slice和splice的区别

  相同点就是都是对字符串进行切割
  在这里主要是不同点:
  1.slice不仅可以对数组进行切割,还可以对字符串同样有效,但是splice只能对数组进行切割
  2.slice执行后不会改变原有函数,而splice会

     

3.map(),foreach(),reduce(),filter()

    map()方法会创建一个新的数组,其结果是该数组中的每个元素都会调用一个提供函数后返回的结果

  forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。

  注意: forEach() 对于空数组是不会执行回调函数的。

  两个函数的不同点:
  1.map()会创建一个新的数组,不会对原有数组进行改变
  2.map()可以进行链式调用


  reduce()是把结果继续和序列的下一个元素做累计计算
   例如:[x1,x2,x3,x4].reduce(f)=f(f(f(x1,x2),x3),x4)
  

下面是对翻转字符串的三种方法:
1.第一种是利用了函数的回调
2.第二种则是通过reduce方法的有点
3.第三种看上去一目了然,不过是先将其转换成数组,再调用了reverse()方法,再转换成字符串。

function reverse(str) {
  if (str.length === 1) {
    return str
  }
  return str.slice(-1) + reverse(str.slice(0, -1))
}

function reverse(str) {
  return str.split('').reduce((prev, next) => next + prev)
}

function reverse(str) {
  return str
    .split('')
    .reverse()
    .join('')
}

 

初次总结,若有不对,还望指点。

 

 posted on 2017-10-27 16:10  董董董啊  阅读(442)  评论(0)    收藏  举报