在js中,很多时候我们需要对字符串及数组进行操作,得到我们需要的方便操作的形式,以下是整理出来的相关操作函数:
一、字符串的函数:
var a=“hello”;
var b=" world";
// 1.内置的方法:concat() 将两个字符串拼接,返回一个新的字符串
var c= a.concat(b);
alert(c);
弹出的值:hello world
2.indexOf()
查找当前字符串是否存在 返回索引位 从前往后查找
如果查找范围内没有该字符,则返回-1,有的话返回索引
alert(b.indexOf("r",4));
//r为要查找的字符,0是开始查找的索引位 只写一个值也可以,默认从零位开始
3. lastIndexOf() 用法同indexOf 从后往前查找(注意:索引位的值仍然是从前往后的)
alert(b.lastIndexOf("l",2));
4.charAt() 返回当前位的指定字符
alert(b.charAt(5));
5.***substring()***字符串的截取,两个参数,起始位置和终止位
alert(b.substring(0,3)); //取小不取大
alert(b.substring(2)); 只写一个值表示起始位置,从当前位置到后面所有
/只写一个值表示起始位置,从当前位置到后面所有/
6.substr() 字符串的截取,两个参数,起始位和长度
alert(b.substr(3,2));
alert(b.substr(1)); 只写一个值表示起始位置,从当前位置到后面所有
7.replace() 找到字符串中的某字符,用其他字符来代替
alert(b.replace("orld","ell")); 前面是被替换的字符串,后面是要去替换的
8.slice()类似与substring
9.split() 将字符串转化为数组
10.length() 输出字符串的长度
11.toUpperCase()转化为大写 toLowerCase()转化为小写
二、数组相关函数:
1.typeof() 数组转换为字符串
2.shift 删除数组第一个元素 并返回删除的元素 对原数组有影响
3.pop() 删除数组中的最后一个元素并返回删除掉的元素 对原数组有影响
4.unshift() 给数组前面追加一个元素,返回数组长度,对原数组有影响
5.push() 给数组后面追加一个元素,返回数组长度,对原数组有影响
6.slice() 截断数组,前值为开始位置,后值为结束位(按索引)取小不取大,对原数组无影响
7.splice() 截断数组,前值为开始位置,后值为所取的长度,对原数组有影响
8.join() 数组转字符串 与spilt功能相反
var a=[1,2,3,4,5];*/
console.log(a.join(""));
- sort() 对数组进行排序(固定写法)
var m=[4,6,2,5,3,1,7];
var n= m.sort(function(n1,n2){
/!* return(n1-n2); *!/ //遍历数组中的所有元素两两对比排序,输出从小到大的数
return(n2-n1); //输出从大到小的数
})
console.log(n);
10.reverse()将数组反转
三、关于数组操作的相关题目:
var a=[“a”,“ab1”,12,“abc2”,“1234”,“123fg”];
要求:去除数组中所有的数字
a.forEach(function (value,index,item){
if(typeof value==="string")
{
var arr=value.split(""); //ab1 ["a","b","1"]
for(var key in arr){
if(!isNaN(arr[key]))
{
arr[key]="";
}
}
item[index]=arr.join("");
}
else
{
item[index]="";
}
});
var b=[];
for( var key in a){
if(a[key].length!=0)
{
b.push(a[key])
}
}
console.log(b);
相关说明: a.forEach(function (value,index,items)
{
第一个参数value:对应集合的值;
第二个参数index:集合的索引;
第三个参数items:输出该集合
}
如:var a=[1,2,3,“Hello”,4,5]
a.forEach(function (value,index,items){
if(value=="Hello")
{
items.splice(index,1);
}
})
//删除里面的hello;