javasript 字符串 数组操作

Javascript中经常涉及到对字符串和数组的处理,今天总结一下具体的用法

 

一 操作字符串
String对象有很多函数,可以以不同的方式访问和操作字符串,具体方法如下:
 
charAt(index)  返回指定索引处的字符
charCodeAt(index)  返回指定索引处的字符的Unicode值
concat(str1,str2)  连接多个字符串,返回连接后的字符串的副本
fromCharCode()  将Unicode值转换为实际的字符
indexOf(subString)   返回指定的subString值第一次出现的地方,如果没有找到,返回-1
lastIndexOf(subString)  返回指定的subString最后一次出现的地方,如果没有找到,返回-1
match(regex)   搜索字符串,返回正则表达式的所有匹配
replace(subString/regex,replacementString)  搜索指定的字符串或正则表达式的匹配,并用新的子串代替匹配的字符串
slice(start,end)   返回字符串的start和end(不含)位置之间的部分的一个新字符串
split(sep,limit)  根据分隔符或正则表达式,把字符串分割为子字符串,limit参数指定了从头开始执行分割的最大数量
substr(start,length)  从字符串指定的start位置开始,并按照指定的字符length提取长度
substring(from,to)  返回字符串在from和to(不含)之间的字符串
toLowerCase()  字符串转换为小写
toUpperCase()  字符串转换为小写
valueOf()   返回原始字符串值
 
1.合并字符串
var word1='today';
var word2='is';
var word3='Monday';
var sentence=word1+word2+word3;
var sentence=word1.concat(word2,word3);
2.在字符串中搜索子字符串
var myStr='I think, therefore I am.';
if(myStr.indexOf('think')!=-1){
    console.log(myStr);
}
3.在一个字符串中替换单词
var userName='Brad';
var output='<username> please enter your password:';
output.replace('<username>',userName);
4.将字符串分割为数组
var time='12:10:36';
var tArr=t.split(':');
var hour=tArr[0];
var minute=tArr[1];
var second=tArr[2];
 
 二 操作数组
Array对象提供存储和处理一组其他对象的一种手段,数组可以用来存储数值、字符串、或其他Javascript对象。数组对象也有很多内置的函数,可以用来访问和操作数组。
 
concat(arr1,arr2)  返回一个数组和作为参数传递的数组的连接副本
indexOf(value)   返回数组中value的第一个索引,如果没有找到该条目,返回-1
join(separator)   把一个数组中的所有元素连接为由separator分隔的单个字符串,如果没有指定分隔符,默认为逗号
lastIndexOf (value)   返回数组中value的最后一个索引,若没有找到,返回-1
pop()    删除数组的最后一个元素,并返回该元素
push(item1,item2,....)     添加一个或多个新元素到数组的结尾,并返回数组的新长度
reverse()   反转数组中的所有元素的顺序
shift()   删除数组中的第一个元素,并返回该元素   
slice(start,end)    返回start和end索引之间的元素
sort(sortFunction)   对数组的元素排序,sortFunction是可选的
splice(index,count,item1,item2,...)   在index指定的索引处,删除count个条目,然后在index处插入作为参数传入的任意可选条目
toString()   返回一个数组的字符串形式
unshift()   将新元素添加到数组的开头,并返回新的长度
valueOf()   方法返回一个数组对象的原始值
 
1.合并数组
var arr1=[1,2,3];
var arr2=['three','four','five'];
var arr3=arr1+arr2;
var arr3=arr1.concat(arr2);
2.遍历数组
var week=['Monday','Tuesday','Wednesday','Thursday','Friday];
for(var i=0;i<week.length;i++){
    console.log(week[i]);
}
for(dayIndex in week){
    console.log(week[dayIndex]);
}
3.将数组转换为字符串
var timeArr=[12,10,36];
var timeStr=timeArr.join(':');
4.检查数组是否包含某个条目
function message(day){
    var week=['Monday','Tuesday','Wednesday','Thursday','Friday];
    if(week.indexOf(day)!=-1){
        console.log('happy '+day);
    }
}
5.在数组中添加或删除条目
语句                                                               x的值                                  arr的值
var arr=[1,2,3,4,5]                                        undefined                           1,2,3,4,5
var x=arr.unshift(''zero');                               6                                         zero,1,2,3,4,5
x=arr.push(6,7,8);                                        9                                         zero,1,2,3,4,5,6,7,8
x=arr.shift('zero');                                         zero                                     1,2,3,4,5,6,7,8
x=arr.pop();                                                   8                                         1,2,3,4,5,6,7
x=arr.splice(3,3,'four','five','six');                   4,5,6                                    1,2,3,four,five,six,7
x=arr.splice(3,1);                                           four                                       1,2,3,five,six,7
x=arr.splice(3);                                              five,six,7                               1,2,3
 
 
 
posted @ 2017-04-08 13:33  LittleMoon  阅读(840)  评论(0编辑  收藏  举报