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. codeforces 814E An unavoidable detour for home

    题目链接 正解:$dp$. 感觉这道题就是中国象棋的加强版..我们要发现一些性质. 首先就是这个图肯定是一个按照$bfs$序分层的图,且每个点只往自己上面那一层连了一条边,每个点不可能向自己的上面超过 ...

  2. SOJ 1002/1003/1004 大整数相加/相乘/相除

    三个题目分别考察大整数相加相乘相除运算.如果按照传统算法是取一个长数组,之后进行模拟或者FFT来进行运算.但是相对繁琐. 后来昨天的青岛区域赛网赛1001,用到了JAVA的BigDecimal,于是反 ...

  3. 苹果手机(ios系统)蓝牙BLE的一些特点

    摘自<BluetoothDesignGuidelines.pdf>文档 1. pairing: 苹果手机无法主动发起SMP配对流程,可通过以下两种方式发起配对流程: (1)从端主动发起配对 ...

  4. php模板引擎的原理与简单实例

    模板引擎其实就是将一个带有自定义标签的字符串,通过相应的规则解析,返回php可以解析的字符串,这其中正则的运用是必不可少的,所以要有一定的正则基础.总体思想,引入按规则写好的模板,传递给标签解析类(_ ...

  5. Linux磁盘分区,挂载

    分区基础知识 分区的方式:   1) mbr分区:     1.最多支持四个主分区     2.系统只能安装在主分区     3.扩展分区要占一个主分区     4.MBR最大只支持2TB,但拥有最好 ...

  6. Java: System.exit() 与安全策略

    说明 System.exit() 的本质是通知 JVM 关闭. 一般来说,有两种禁用 System.exit() 的办法: 安全管理器 安全策略 本质都是JRE 提供的本地实现,在执行之前进行权限判断 ...

  7. write函数过程解析

    write函数作为用户向终端或者文件进行写数据的重要函数,有着重要的作用. |------|          |---------|   |---------| |----------| | wri ...

  8. div自适应水平垂直居中的方法

    1.Flexbox布局: display:flex; justify-content:center; align-items:center; width:100%; 2.Bootstrap栅格布局 一 ...

  9. hdu_4135_Co-prime

    Given a number N, you are asked to count the number of integers between A and B inclusive which are ...

  10. MySQL高可用架构故障自动转移插件MHA

    mha高可用架构是目前mysql高可用故障转移比较成熟的解决方案.MHA插件复杂监控mysql主节点的健康情况.在主节点宕机后,MHA把binlog通过ssh传到从节点进行重做补齐.并提升其中一个从节 ...