大家在平时会常常因为数组和字符串的方法混乱而烦恼,初学者也会因为这些而感到特别彷徨。我希望大家不要因此而害怕,从而总结了所有数组与字符串的操作方法希望能给大家一些帮助。
**数组的方法:**
1. 创建数组
1)new Array()
2)字面量 []
2.检测变量是否为数组
1)instanceof
作用:检测变量是否为某个构造函数的实例
语法:变量 instanceof 构造函数名
返回值:true或false
2)Array.isArray(被检测的值/变量) 返回值:true或false
3.添加数组元素:
1)在末尾添加数组元素
语法:数组.push(新元素1,新元素2,新元素3,......)
返回值:数组的最新长度
2)在开头添加数组元素
语法:数组.unshift(新元素1,新元素2,新元素3,......)
返回值:数组的最新长度
4.删除数组元素:
1)在末尾删除数组元素
语法:数组.pop();
返回值:被删除的数组元素
2)在开头删除数组元素
语法:数组.shift()
返回值:被删除的数组元素
5.翻转数组元素:
语法:数组.reverse()
返回值:翻转后的数组
注意:原数组发生了改变
6.数组元素的排序:
从前往后排序:
数组.sort(function(a,b){
return a-b
})
从后往前排序:
数组.sort(function(a,b){
return b-a
})
7.查找元素的位置:
1)查找第一次出现的位置:
语法:数组.indexOf('给定的元素',formindex)
参数:formindex(从哪个位置开始查找)-------默认是0
返回值:索引(如果没有该元素则返回-1)
2)查找最后一次出现的位置
语法:数组.lastIndexOf('给定的元素')
返回值:索引(如果没有该元素则返回-1)
8.数组转字符串:
1)数组.toString()
2)数组.join([分隔符])-----默认的分隔符是','
9.数组的合并:
语法:
数组.concat(元素一,元素二,元素三,......)
数组.concat(数组一,数组二,数组三,......)
返回值:返回合并后的新数组(原数组不受影响)
10.提取数组元素:
语法:数组.slice(begin,end)
参数:begin,开始提取的位置(索引)默认是0;end,提取终止的位置(索引);注意:包含begin,不包含end
返回值:仙湖组(原数组不受影响)
11.删除数组任意位置任意个数的元素:
语法:数组.splice(start,个数);
参数:start 从哪个位置开始删
返回值:被删除元素组成的数组(注意:原数组受到了影响)
12.遍历数组元素:
1)for循环
var arr = [515, 65496, 84, 4, 784, 4, 4, 64, 6, 0]
for (var i = 0; i <= 9; i++) {
console.log(arr[i]);
}
// 倒序遍历
for (var a = arr.length - 1; a >= 0; a--) {
console.log(arr[a]);
}
2)$.each()
3)数组.forEach():
数组.forEach(function(item,index,arr){
//有几个元素,此函数就会调用几次
//item: 数组元素
//index: 元素的索引
//arr: 数组本身
})
13.筛选数组元素:
语法:数组.filter(function(item,index,arr){
//item: 数组元素
//index: 元素的索引
//arr: 数组本身
return 筛选条件
})
返回值:把符合条件的元素放到一个新数组中,然后返回
14.判断是否有满足条件的元素:
语法:数组.some(function(item,index,arr){
//item: 数组元素
//index: 元素的索引
//arr: 数组本身
return 判断条件
})
返回值:true或者false
15.操作数组的元素map()
语法:数组.map(function(item,index,arr){
//item: 数组元素
//index: 元素的索引
//arr: 数组本身
})
返回值:新数组,新数组中的每个元素都是回调函数的返回值(原数组不受影响)
16.判断所有的元素是否都符合条件 every()
语法:数组.every(function(item,index,arr){
//item: 数组元素
//index: 元素的索引
//arr: 数组本身
return 判断条件
})
返回值:true或者false
17.伪数组转化为真数组
Array.from(伪数组)
18.查找第一个满足条件的元素:
数组.find(function(item,index,arr){
return 查找条件
})
返回值:数组元素或者undefined
19.查找第一个满足条件的元素的索引:
数组.find(function(item,index,arr){
return 查找条件
})
返回值:数组元素的索引或者-1
20.判断数组中是否有某个元素:
数组.includes(被查找的元素)
返回值:true或者false
**字符串的方法:**
1.字符串的长度:字符串.length
2.遍历字符串:
for(var i=0;i<str.length;i++){
console.log(str[i])
}
3.查找字符出现的位置:
1)第一次出现的位置:
语法:字符串.indexOf('给定的字符串',fromIndex)
参数:formIndex,从哪个位置开始查找,默认是0
返回值:索引(如果没有该字符,返回-1)
2)最后一次出现的位置:
语法:字符串.lastIndexOf('给定的字符串',fromIndex)
参数:formIndex,从哪个位置开始查找,默认是0
返回值:索引(如果没有该字符,返回-1)
4.根据位置返回字符:
1)字符串[索引]
2)字符串.charAt(索引号)
3)字符串.charCodeAt(索引号)-----------其返回值为指定位置上字符对应的ascii码值
5.合并字符串:
字符串.concat('一个其他的字符串')
6.截取字符串:
字符串.substring(indexStart,indexEnd)
参数:indexStart,开始截取的位置;indexEnd,结束位置
返回值:截取到的新的字符串(包含开始,不包含结束)
7.替换字符串:
字符串.replace('要替换的字符','替换成的字符')
作用:把字符串中第一个指定的字符,替换成新字符
返回值:返回替换后的新字符串(原字符串不受影响)
8.字符串转数组:
字符串.split('分隔符')
作用:把字符串通过指定的分隔符,切割成数组
9.大小写转换:
转换成大写:字符串.toUpperCase()
转换成小写:字符串.toLowerCase()
10.去除字符两侧的空格
字符串.trim()
**终言:**
到这里就是我所知晓的所有数组和字符串的方法,虽然不够详细(不会用的照搬)也不想再继续写了,毕竟要把理解也写出来太累了。这些东西如果是刚工作的我建议你们背下来死记硬背也要记下来,这是工作中最常用到的操作,可以尽量帮助你们尽快的适应工作的节奏,有不理解的可以评论,有时间了我会解答疑惑。
08-20
1758
06-05
341
06-17
2251