数组常见方法与字符串常见方法大全!

一,数组常见方法: 
1. Array.map():

遍历数组!返回值是处理之后的新数组(注意区分和forEach的区别(原数组没有改变))

let arr = [1, 2, 3, 4, 5]
  let newArr = arr.map(x => x*2)
  //arr= [1, 2, 3, 4, 5]  原数组保持不变
  //newArr = [2, 4, 6, 8, 10] 返回新数组

2.Array.forEach():

遍历数组!回调函数有三个参数:第一个是数组每个元素,第二个是每个元素的索引号,第三个是数组本身(基本用不到这个参数),没有返回值,直接改变原数组

let arr = [1, 2, 3, 4, 5]
  num.forEach(x => x*2)
  // arr = [2, 4, 6, 8, 10] 数组改变,注意和map区分

3.Array.filter():

筛选数组(遍历) !将所有元素进行判断,将满足条件的元素作为一个新的数组返回。简单来说就是数组里面符合某条件的话丢到新数组里面

let arr = [1, 2, 3, 4, 5]
  const isBigEnough => value => value >= 3
  let newArr = arr.filter(isBigEnough )
  //newNum = [3, 4, 5] 满足条件的元素返回为一个新的数组

4.Array.every():

判断数组(遍历)!将所有元素进行判断返回一个布尔值,如果所有元素都满足判断条件,则返回true,否则为false

let arr = [1, 2, 3, 4, 5]
  const isLessThan4 => value => value < 4
  const isLessThan6 => value => value < 6
  arr.every(isLessThan4 ) //false
  arr.every(isLessThan6 ) //true

5.Array.some():

判断数组(遍历)!将所有元素进行判断返回一个布尔值,只要有一个符合,那么就返回true。否则返回false(注意与every()区分)

let arr= [1, 2, 3, 4, 5]
  const isLessThan4 => value => value < 4
  const isLessThan6 => value => value > 6
  arr.some(isLessThan4 ) //true
  arr.some(isLessThan6 ) //false

6.Array.push():

在数组的末尾添加一个或多个元素! 返回值是数组的长度数字(原数组已发生改变)

let arr=[1,2,3,4,5]
var longth=arr.push(6,7);
console.log(arr, longth);

值:arr[1,2,3,4,5,6,7]

7.Array.unshift():

在数组的开头添加一个或多个元素! 返回值是数组的长度数字(原数组已发生改变)

let arr = [1, 2, 3, 4, 5]
  arr.unshift(6, 7)
  console.log(arr) //[6, 7, 2, 3, 4, 5]
  console.log(arr.length) //7

8.Array.pop():

删除数组中最后一个元素!返回值是被删除后的元素(原数组已发生改变)

let arr=[1,2,3,4,5]
var delElement=arr.pop();
console.log(arr, delElement);

arr的值为[1,2,3,4] ,delElement的值为5

9.Array.shift():

删除数组中第一个元素!返回值是被删除后的元素(原数组已发生改变)

let arr = [1, 2, 3, 4, 5]
  arr.shift()
  console.log(arr) //[2, 3, 4, 5]
  console.log(arr.length) //4

10.Array.findIndex():

找出数组中满足某条件第一个元素的索引号! 返回值是数字(索引号),如果没有符合条件的元素返回 -1, (注意和find(),indexOf()的区分 )

let arr1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
var ret1 = arr1.find((value, index, arr) => {
  return value > 4
})

var ret2 = arr1.find((value, index, arr) => {
  return value > 14
})
console.log( ret1)  // 5
console.log( ret2)  //undefined

11.Array.find():

找出数组中满足某条件第一个元素的值! 返回值是满足条件的元素,如果没有符合条件的元素返回 undefined

const arr1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
var ret3 = arr1.findIndex((value, index, arr) => {
  return value > 4
})

var ret4 = arr1.findIndex((value, index, arr) => {
  return value > 14
})
console.log(ret3) // 4
console.log(ret4) // -1

12.Array.indexOf():

 返回某个指定的字符串值在字符串中首次出现的位置! 如果没有符合条件的元素返回, 则返回 -1

let a = ['a','s','d','f']
a.findIndex(function(d){ 
    return d === 'd';       // 测试条件为true时返回当前位置
})  

13.Array.sort()

将数组进行排序(升序) ! 返回新数组,原数组也会改变

let arr=[2,3,5,1,4];
let newArr=arr.sort();
console.log(newArr,arr);//newArr=[1,2,3,4,5]; arr r=[1,2,3,4,5]

14.Array.reverse()

可以将数组进行倒序!并返回新数组,原数组也会改变

let arr=[1,2,3,4,5];
let newArr=arr. reverse();
console.log(newArr,arr);//newArr=[5,4,3,2,1]; arr=[5,4,3,2,1];

15.Array.splice(开始位置, 删除的个数,添加的元素):

增删改都可以!会改变原始数组。

let arr = [1, 2, 3, 4, 5];
   let arr1 = arr.splice(2, 0 'haha')
   let arr2 = arr.splice(2, 3)
   let arr1 = arr.splice(2, 1 'haha')
   console.log(arr1) //[1, 2, 'haha', 3, 4, 5]新增一个元素
   console.log(arr2) //[1, 2] 删除三个元素
   console.log(arr3) //[1, 2, 'haha', 4, 5] 替换一个元素

16.Array.reduce():

reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:初始值(或者上一次回调函数的返回值),当前元素值,当前索引,调用 reduce 的数组

四个参数值:

1.Accumulator (acc) (累计器)

2.Current Value (cur) (当前值)

3.Current Index (idx) (当前索引)

4.Source Array (src) (源数组)

let array1 = [1, 2, 3, 4];
const reducer = (previousValue, currentValue) => previousValue + currentValue;

// 1 + 2 + 3 + 4
console.log(array1.reduce(reducer));
// expected output: 10

// 5 + 1 + 2 + 3 + 4
console.log(array1.reduce(reducer, 5));
// expected output: 15

二,字符串常见方法:

1.Array.join():

将数组转化为字符串! 括号可以跟分隔符,返回值是字符串(原数组没有改变)

let arr = [1, 2, 3, 4, 5];
  let str1 = arr.toString()
  let str2 = arr.toString(',')
  let str3 = arr.toString('##')
  console.log(str1)// 12345
  console.log(str2)// 1,2,3,4,5
  console.log(str3)// 1##2##3##4##5

 2.Array.toString():

将数组转化为字符串! 返回值是新的字符串

let arr = [1, 2, 3, 4, 5];
  let str = arr.toString()
  console.log(str)// 1,2,3,4,5

3.Array.split ():

将字符串转换为数组!用分隔符隔开 ,返回值是一个数组

var str="How are you doing today?";
var n=str.split(" ");

console.log(n);  // How,are,you,doing,today?

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值