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
 
 
 

javasript 字符串 数组操作的更多相关文章

  1. Javascript-常用字符串数组操作

    字符串的操作在编写Js的过程中是不可避免的 因为它太多的API 还有相似的API让我们很头痛 为了避免以后遇到模拟两可的问题 还是做个笔记比较好 把常用的字符串操作记录下来成笔记 方便以后查找 No1 ...

  2. JS 常用字符串,数组操作

    JavaScript String/Array对象 JS String对象   String 对象属性 属性 描述 constructor 对创建该对象的函数的引用 length 字符串的长度 pro ...

  3. SQL对字符串数组的处理详解

    原文地址:SQL字符串数组操作文章出处:DIY部落(http://www.diybl.com/course/7_databases/sql/sqlServer/2007106/76999.html) ...

  4. IOS NS 字符串 数组 字典 文件 动态 静态 操作

    ios 常用字符串的操作   //将NSData转化为NSString        NSString* str = [[NSString alloc] initWithData:response e ...

  5. 页面循环绑定(变量污染问题),js面向对象编程(对象属性增删改查),js字符串操作,js数组操作

    页面循环绑定(变量污染问题) var lis = document.querySelectorAll(".ul li") for ( var i = 0 ; i < lis. ...

  6. 第三章 JQuery: HelloWorld--常见方法--css--选择器--筛选器--属性--效果--事件--数组操作--字符串操作--对象转换

    1.jQuery简介 为了简化JavaScript 的开发, 一些JavsScript 库诞生了. JavaScript库封装了很多预定义的对象和实用函数.能帮助使用者建立有高难度交互的页面, 并且兼 ...

  7. js字符串和数组操作,容易混淆的方法总结(slice、substring、substr、splice)

    平时工作中,很少静下心来总结基础知识,总觉得自己会用了,有点飘了,直到碰壁之后才懂得基础知识的重要性.大牛告诉我,一次写对,是不是可以不用F12去调试了?是不是省了时间?简直是面红耳赤,无地自容.在这 ...

  8. Js中的字符串/数组中常用的操作

    JS为每种数据类型都内置很多方法,真的不好记忆,而且有些还容易记混,现整理如下,以便以后查看: 一.String ①charAt()方法用于返回指定索引处的字符.返回的字符是长度为 1 的字符串. 语 ...

  9. js对象,数组,字符串的操作

    循环绑定=>变量污染 for (var i = 0;i<lis.length;i++){ lis[i].index = i;#给页面元素对象添加一个任意属性(保留索引的属性index) # ...

随机推荐

  1. Linux硬盘扩容

    1.安装gparted分区工具 2.从虚拟机设置新的虚拟硬盘 3.挂载分区 sudo mount -t ext4 /dev/sdb1 /home/zhoushuo/zsdf -hsudo chmod ...

  2. BZOJ1116:[POI2008]CLO(并查集)

    Description Byteotia城市有n个 towns m条双向roads. 每条 road 连接 两个不同的 towns ,没有重复的road. 你要把其中一些road变成单向边使得:每个t ...

  3. nbu异地备份实施前,数据收集日志

    1.修改bp.conf配置文件显示重删率 BPDBJOBS_COLDEFS = JOBID 5 true BPDBJOBS_COLDEFS = TYPE 7 false BPDBJOBS_COLDEF ...

  4. Mysql优化实践(分页优化)

    当你和别人都能实现一个某个功能,这时候区分你们能力的不是谁干活多少,而是谁能写出效率更高的代码.比如显示一个订单列表它不仅仅是写一条SELECT SQL那么简单,我们还需要很清楚的知道这条SQL他大概 ...

  5. spring mvc(4)处理模型数据

    处理模型数据 Spring MVC 提供了以下几种途径输出模型数据: – ModelAndView: 处理方法返回值类型为 ModelAndView时, 方法体即可通过该对象添加 模型数据 – Map ...

  6. mongo数据库基础语法

    http://www.runoob.com/mongodb/mongodb-create-collection.html 很详细  

  7. ARM Linux 内核 panic 之cache 一致性 ——Cortex-A9多核cache和TLB一致性广播

    ARM Linux 内核 panic 之cache 一致性 ——Cortex-A9多核cache和TLB一致性广播 Cortex-A9的多喝CPU可以接收和执行一致性广播操作,当其使能并处于SMP模式 ...

  8. Canvas制作的下雨动画

    简介 在codepen上看到一个Canvas做的下雨效果动画,感觉蛮有意思的.就研究了下,这里来分享下,实现技巧.效果可以见下面的链接. 霓虹雨: http://codepen.io/natewile ...

  9. 商业化IM 客户端接口设计分析

    对于刚接触IM(即时通讯)开发,通过阅读成熟的商业代码能够对即时通讯软件大体上有个认识,比如消息发送,消息接受,消息监听,群聊,单聊,聊天室.我这边直接拿[Gobelieve IM]源码来做剖析.IM ...

  10. Kubernetes对象模型

    原文发表于https://www.fangzhipeng.com/kubernetes/2018/10/13/k8s-object-model/ 欢迎访问我的方志朋的博客 Kubernetes对象 在 ...