js字符串和数组操作方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js字符串和数组操作方法相关的知识,希望对你有一定的参考价值。
参考技术A (1).是个属性 不是个方法;(2).返回 字符串的长度 如果字符串内有空格 则将空格也算在内;
(1)返回指定位置的字符;
(2)括号内的参数 写需要返回的内容的索引值;
(1)用于拼接两个或多个字符串;
(2)不改变原字符串 返回一个拼接完成的字符串的 副本;
(3)可以拼接数字 会把数字强制成字符串;
(4)也可以拼接数组 但是会将分隔符一起转化为字符串;
(1)从前往后搜索
(2)返回某个指定的字符串 值 在字符串中首次出现的位置
(3)如果没有搜索到 则返回-1
(1)从后往前搜索
(2)返回某个指定的字符串 值 在字符串中首次出现的位置
(2)如果没有搜索到 则返回-1
(1)在字符串中 用一些字符串替换另一些字符串
(2)两个参数:
(3)如果有多个值 被匹配上 从前往后只替换第一个值
(1)用于把一个字符串分割成 带有字符串的数组
(2)不写参数 会将整个字符串作为一个元素 存到数组里面 不改变原字符串 返回生成的数组
(3)如果只写一个 空元素(' ')则将字符串 每一个值都作为元素 存到数组里面 包括字符串里面的空格
(4)如果写了参数 在字符串两端 则将参数 转化成空元素
(5)反之 将参数 转译成分隔符
(6)如果是两个参数 第二个参数 代表 生成的数组的长度
(1)可在字符串中抽取以指定索引值开始的指定数目的字符
(2)只有一个参数的时候 从指定地方开始 一直到结束
(3)两个参数 从指定位置开始 截取指定长度
(1)提取字符串 指定开始位置 到指定结束位置 之间的字符
(2)只有一个参数的时候 从指定地方开始 一直到结束
(3)两个参数 从指定位置开始 到指定位置结束
(1)用来将字符串转为小写
(2)仅针对于英文字母
(1)用来将字符串转为大写
(2)仅针对英文字母
(1)向数组末尾添加元素,并返回新的长度
(2)直接修改原数组,而不是创建新数组
(3)可以往数组中添加数组,但是被添加的数组是作为元素存储在原数组中,而不是拼接
(1)向数组开头添加元素,并返回新的长度
(2)直接修改原数组,而不是创建新数组
(3)可以往数组中添加新数组,但是被添加的数组是作为元素存储在原数组中,而不是拼接
(1)删除并返回数组的最后一个元素,修改原数组
(2)将数组长度-1
(3)如果数组为空,pop()不改变原方法,返回underfined
将数组的第一个元素删除并返回值,修改原数组
(1)向数组中添加一个元素,或删除一个元素(返回删除元素)
(2)可以添加数组,但是被添加的数组以元素形式添加
(3)删除和添加可以同时进行
(1)用来连接两个或多个数组,该方法不会改变现有数组
(2)只会返回一个被连接数组的副本
(3)副本数组的拼接,是按顺序拼接,接受的数组在前面,往进添加的数组在后面,不是以元素形式存在,直接拼接
(1)分隔符可以是','空格,只作用与最外层数组元素
(2)用来把数组中所有的元素放入一个字符串,数组转化字符串方法
(3)不会改变原数组,会返回一个新的字符串,可用变量接收
(4)如果原数组是二维数组,会将里面作为元素的数组,也转化为字符串
返回截取新数组,start必写
js中数组操作方法整理
1. join()
功能:将数组中所有元素都转化为字符串并连接在一起。
2. reverse()
功能:将数组中的元素颠倒顺序。
3. concat()
功能:数组拼接的功能 ,返回新数组,原数组不受影响。
4. slice()
截取数组生成新数组,原数组不受影响。
返回的数组包含第一个参数指定的位置和所有到但不含第二个参数指定位置之间的所有元素。如果为负数,表示相对于数组中最后一个元素的位置。如果只有一个参数,表示到数组末尾。
5. splice()
功能:从数组中删除元素、插入元素到数组中或者同时完成这两种操作。
输入:第一个参数为指定插入或删除的起始位置,第二个参数为要删除的个数。之后的参数表示需要插入到数组中的元素 。如果只有一个参数,默认删除参数后边的所有元素。
输出:返回一个由删除元素组成的数组。
注意:新建了一个数组,并修改了原数组
6. push()
在数组末尾添加一个或多个元素,并返回新数组长度
7. pop()
从数组末尾删除1个元素(删且只删除1个), 并返回 被删除的元素
8. shift()
在数组开始添加一个或多个元素,并返回新数组长度
9. unshift()
在数组开始删除一个元素(删且只删除1个),并返回 被删除的元素
10. toString()和toLocaleString()
将数组的每个元素转化为字符串,并且输入用逗号分隔的字符串列表。功能类似join();
11. indexOf()和lastIndexOf()
indexOf() 两个参数:要查找的项和(可选的)表示查找起点位置的索引。其中, 从数组的开头(位置 0)开始向后查找。没找到返回-1. 返回查找项的索引值
lastIndexOf() 从数组的末尾开始向前查找。返回查找项的索引值(索引值永远是正序的索引值),没找到返回-1
在数学中高阶函数听起来很大上,JavaScript中也有的,其实就是把一个函数作为另一个函数的参数,不要被高阶吓到了,下边几种数组方法都属于此。
sort();
默认情况下sort()方法没有传比较函数的话,默认按字母升序,如果不是元素不是字符串的话,会调用toString()方法将元素转化为字符串的Unicode(万国码)位点,然后再比较字符。所以用默认方法排序数据是有问题的。
var arr = [20,10,2,1,3];
arr.sort();// [1, 10, 2, 20, 3]
arr.sort(function(a,b){
return a-b; //升序
}); //[1, 2, 3, 10, 20]
arr.sort(function(a,b){
return b-a; //降序
}); //[20,10,3,2,1]
forEach()
从头至尾遍历数组,为每个元素调用指定函数输入为一个待遍历函数,函数的参数依次为:数组元素、元素的索引、数组本身
map()
调用的数组的每一个元素传递给指定的函数,并返回一个新数组 ,不修改原数组。var arr = [2,3,4,5,6];
var bb= arr.map(function(x){
return x*x;
});
console.log(bb); // [4, 9, 16, 25, 36]
filter()
过滤功能,数组中的每一项运行给定函数,返回满足过滤条件组成的数组。可以巧妙的用来去重
var a = [1,2,3,4,5,6,3,1];
a.filter(function(v,i,self){
return self.indexOf(v) == i;
});
//[1, 2, 3, 4, 5, 6]
reduce()和reduceRight()
reduce() 两个参数:函数和递归的初始值。从数组的第一项开始,逐个遍历到最后reduceRight() 从数组的最后一项开始,向前遍历到第一项
以上是关于js字符串和数组操作方法的主要内容,如果未能解决你的问题,请参考以下文章