首页 > 其他分享 >js数组、字符串的那些方法

js数组、字符串的那些方法

时间:2024-10-15 18:43:51浏览次数:1  
标签:返回 arr return 数组 js str 字符串

一、数组方法

arr.copyWithin(a,b,c)

用数组部分覆盖数组中的某些内容,改变原数组内容但长度不变
a:被覆盖的起始下标;
b:复制开始下标(包含);
c:复制结束下标(不包含)

[1,2,3,4].copyWithin(1,2,3)//[1, 3, 3, 4]

arr.flatMap(function(t,i){})

拍平数组,只能拍平一层 t表示第二层的每项,i索引

[1,2,3,4,[1,2]].flatMap((t,i)=>t)  //[1,2,3,4,1,2]

arr.fill(填充内容)

将数组以某个内容填充,数组所有项相同

let arr=new Array[3];
arr.fill(0);//arr为[0,0,0]

arr.unshift() 添加元素

在数组最前面插入项,返回数组的长度

arr.shift() 删除元素

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

arr.push() 添加元素

在数组最后面插入项,返回数组的长度

arr.pop() 删除元素

删除数组中的最后一个元素,并返回删除的元素

arr.revese()

颠倒数组顺序

arr1.concat(arr2)

合并两个数组,返回新数组

arr.splice(a,b,c)

删除/添加元素
a:起始下标
b:删除个数
c:添加的元素内容(可选)

[1,2,3].splice(1,1,3)//[1,3,3]

arr.sort() 排序,改变原数组

参数不填:以字母递增顺序排序;
参数为function(a,b){return a-b} 以数字递增顺序排序
参数为function(a,b){return b-a} 以数字递减顺序排序

[1,54,2,6,29].sort((a,b)=>a-b);//[1, 2, 6, 29, 54]

arr.slice(a,b) 截取数组元素

a:开始下标;
b:结束下标

arr.join(拼接内容) 将数组拼接成字符串

二、数组遍历方法

arr.forEach() 遍历数组

无return,方法内也没有return

arr.map() 遍历数组

有return ,方法本身返回函数内return的集合

arr.filter() 过滤数组内容

return 过滤条件

arr.reduce(function(){},sumStart) 迭代

第一个参数 : (sum,item,index)=>{
return 下一次的sum值
}
第二个参数 : sum初始值, 一定要传初始值,一般为0(不传遇到空数组就会报错)
reduce自己返回值 : 最后一次sum结果

 const res = arr.reduce( (sum,item,index) => sum + item , 0)

arr.every()

有一个不满足条件的就返回false

arr.some()

有一个满足条件的就返回true,所有的都不满足才返回false

三、字符串方法

str.padStart(满足几位,添加的字符)

向前补齐

'1'.padStart(2,'0'); //'01'  可以用于日期补0

str.padEnd(满足几位,添加的字符)

向后补齐

'1'.padEnd(2,'0); //'10' 

str.split('') 分割

将字符串以某字符分割成数组

str.toUpperCase() 把字符串转换为大写。

str.toLowerCase() 把字符串转换为小写

str.indexOf(检索的字符,检索起始下标)

返回指定字符串在字符串中首次出现的位置,没有则返回-1

str.lastIndexOf(检索的字符,检索起始下标)

返回检索字符最后出现的位置,没有则返回-1

str.search(检索的字符串)

返回与字符串匹配的索引值,没有则返回-1

str.charAt(字符位置)

返回指定位置的字符,无参数默认为第一个字符

str.substring(开始索引,结束索引) 截取字符串

与slice功能一样

str.substr(开始索引,截取个数)

str.replace(oldStr,newStr)

替换字符串

标签:返回,arr,return,数组,js,str,字符串
From: https://www.cnblogs.com/a-fairy/p/18468160

相关文章

  • 字符串哈希
    字符串哈希哈希函数的基本性质:1)输入参数的可能性是无限的,输出的值范围相对有限2)输入同样的样本一定得到同样的输出值,也就是哈希函数没有任何随机机制3)输入不同的样本也可能得到同样的输出值,此时叫哈希碰撞4)输入大量不同的样本,得到的大量输出值,会几乎均匀的分布在整个输出域上......
  • C语言——数组超详细版总结
    目录1一维数组1.1一维数组的创建与初始化1.2.1一维数组的创建1.2.2一维数组的初始化1.2一维数组的访问1.3一维数组在内存中的存储2二维数组2.1二维数组的创建与初始化2.1.1二维数组的创建2.2.2二维数组的初始化2.2二维数组的访问2.3二维数组在内存中的......
  • 例2.11_2首先生成包含1000个随机字符的字符串,然后统计每个字符的出现次数,注意get()方
    #利用collections模块的Counter()函数直接作出统计 #依次加载三个模块importstring,random,collectionsx=string.ascii_letters+string.digitsy=''.join([random.choice(x)foriinrange(1000)])count=collections.Counter(y)fork,vinsorted(count.items()):......
  • python根据时间字符串获取时间,判断是否非法定节假日时间
    fromdatetimeimportdatetimefromchinese_calendarimportis_workday,is_holiday,is_in_lieu,get_holiday_detail#定义两个时间字符串time_str1="2024-10-1218:41:02"time_str2="2024-10-1217:30:00"#将时间字符串转换为datetime对象time1=datetime.......
  • lua脚本使用cjson转换json时,空数组[]变成了空对象{}
    一、前言项目lua使用工具:cjson问题:reids中部分数据的jsonkey存在为[]的值,使用cjson进行解析的时候将原本空数组[]解析成了空对象{}目标:原本[] 转[]二、解决方案在使用cjson类库时,先配置json转换要求--设置json转换格式cjson.encode_empty_table_as_object(fal......
  • 利用pdf.js在线展示PDF文档
    在Web项目中,经常需要在浏览器端展示PDF文档,本文通过一个简单的小例子,简述pdf.js的简单使用,仅供学习分享使用,如有不足之处,还请指正。pdf.js下载pdf.js是一个通用的、基于web标准的、用于解析和呈现pdf的平台。用户可以通过pdf.js的官方网站,进行下载,如下图所示:  关于下载页......
  • leetcode 刷题day43动态规划Part12(115.不同的子序列、583. 两个字符串的删除操作、72.
    115.不同的子序列思路:这个题还是比较有难度的,问题s中有多少个t子序列可以转化为s字符串中有多少删除元素的方式,使s可以变成t。考虑动规五部曲。1、确定dp数组(dptable)以及下标的含义dp[i][j]:以i-1为结尾的s子序列中出现以j-1为结尾的t的个数为dp[i][j]。2、确定递推公式......
  • 基于Node.js+vue航运空管系统(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着全球贸易的持续增长和航运业的蓬勃发展,航运空管系统的建设变得愈发重要。航运作为国际贸易的主要运输方式之一,其安全性和效率直接关系到全球经济的稳定......
  • 基于Node.js+vue二手汽车交易系统(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着经济的快速发展和人民生活水平的日益提高,汽车已成为现代社会不可或缺的交通工具。然而,随着汽车保有量的迅速增长,二手车市场也随之蓬勃发展。传统的二手......
  • 基于Node.js+vue海滨学院学生大创项目申报与审批系统(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景在高等教育日益重视创新与实践能力培养的背景下,大学生创新创业项目(简称“大创项目”)已成为提升学生综合素质、促进产学研结合的重要途径。海滨学院作为一所......