网站首页 » 前端开发 » JavaScript » 字符串和数组方法整理
上一篇:
下一篇:

字符串和数组方法整理

前言

字符串和数组两个所涉及的方法也不是很多,但不知道为什么,需要用某些方法的时候脑子里竟然不知道对应的方法叫什么,或者知道这个方法怎么写,但里面的参数,以及返回值,还是是很清楚。所在对于我自己来说,有必要整理出来。

字符串方法

startsWith()

endsWith()

includes()

这三个方法用法简单:

const str = "hello yunkus.com!"
const res = str.startsWith("hello"); // true
const res = str.endsWith("com!"); // true
const res = str.includes("yunkus.com"); // true

上面三个方法还可以接收第二个参数 n

  • endsWith()的第二个参数表示在字符串的前 n 字符中是否以某个字符串结尾
  • startsWidth() 的第二个参数表示从字符串的第 n 个字符开始,是否以某个字符串开头
  • includes() 的第二个参数表示从字符串第 n 个字符开始查找,是否含有某个字符串
const res = str.endsWith("hello",8); // true
const res = str.startsWith("hello",0); // true
const res = str.includes("hello",0); // true

substring()

从第几个(下标)字符开始,截取到哪个(下标)字符,返回匹配到的新字符串,参数都为非负数

语法:

stringObject.substring(start,stop)

如果 stop 没传,那么默认到字符串末尾

substr()

从第几个(下标)字符开始,截取多少个(数量)字符,返回匹配到的新字符串,如果传的是负数,表示从字符串末尾开始算起,第 n 个字符开始

语法:stringObject.substr(start,length)

如果 length 不传,默认到字符串末尾

indexOf()

查找字符串,找到返回字符串对应的下标,找不到返回 -1

split()

把字符串中的某个字符作为分隔符进行分割,分割成的项组成一个新数组

toLowerCase()

转为小写

toUpperCase()

转为大写

数组方法

forEach()

数组遍历,对于每个元素都执行一次回调

语法:

array.map(function(currentValue,index,arr), thisValue)

map()

返回一个新数组,新数组元素为原数组每个元素调用回调后的值

语法:

array.map(function(currentValue,index,arr), thisValue)

filter()

返回一个新数组,新数组中的元素为原数组中符合条件的所有元素

语法:

array.filter(function(currentValue,index,arr), thisValue)

reduce()

方法接收一个函数作为累加器

语法:

array.reduce(function(total, currentValue, currentIndex, arr), initialValue)

initialValue,可选。传递给函数的初始值

some()

检测数组中是否有满足指定条件的元素,只有有一个满足条件就返回 true,否则返回 false,并且不会再去检测剩余的元素

语法:

array.some(function(currentValue,index,arr),thisValue)

every()

检测数组所有元素是否都符合指定条件(通过函数提供),这个方法跟 some() 很类似,唯一不同的就是它会检测数组中所有的元素,并且只有当所有的元素都满足条件时才会返回 true,否则返回 false,如果有一个元素不满足就不会再检测剩余的元素

join()

通过指定的分隔符把数组的每个元素按顺序拼接成一个字符串

语法:

arrayObject.join(separator)

separator 为分隔符

shift()

删除并返回数组的第一个元素

语法:

arrayObject.shift()

unshift()

向数组的开头添加一个或更多元素,并返回新的长度

语法:

arrayObject.unshift(newelement1,newelement2,….,newelementX)

sort()

对数组的元素进行排序

语法:

arrayObject.sort(fn);

参数必需是函数,函数实现排序规则。

reverse()

元素反转

concat()

连接两个或更多的数组,并返回结果

语法:

arrayObject.concat(arrayX,arrayX,……,arrayX)

slice()

返回选定的元素

语法:

arrayObject.slice(start,end)

start、end 两个参数均为数组下标。

splice()

删除元素,并向数组添加新元素

语法:

arrayObject.splice(index,howmany,item1,…..,itemX)

如果 howmany为0 则不删除元素,如果后面还传入了参数,那么就相当于在指定位置添加元素。

很多方法都没给出例子,原因是看文字基本知道它是做什么的了,还有一个重要的原因是这篇文章不是用来学习的,而是用来辅助自己加强记忆的。

  • 微信扫一扫,赏我

  • 支付宝扫一扫,赏我

声明

原创文章,不经本站同意,不得以任何形式转载,如有不便,请多多包涵!

本文永久链接:http://yunkus.com/string-and-array-method/

Leave a Reply

Your email address will not be published. Required fields are marked *

评论 END