Javascript字符串
## 定义
```
var str = new String("abcdefg");
var str = "abcdefg";
``` ## 常用方法
### 字符方法
1.charAt(index):返回下标为index的字符
```
//字符串“Hello World!”下标为1的字符
var str = "Hello World!";
console.log(str.charAt(1)); // e
```
2.方括号[index]:返回下标为index的字符(IE8以前不支持,会返回undefined)
```
//字符串“Hello World!”下标为1的字符的ASCII码
var str = "Hello World!";
console.log(str[1]); // e
```
3.charCodeAt():返回下标为index的字符编码(ASCII码)
```
//字符串“Hello World!”下标为1的字符的ASCII码
var str = "Hello World!";
console.log(str.charCodeAt(1)); // 101
```
### 拼接字符串
1.str.concat(str1,str2,str3....):str与str1,str2,str3...进行拼接
```
// 将"Hello"," World!","My Blog!"三个字符串拼接起来
var str1 = "Hello";
var str2 = " World!";
var str3 = "My Blog!";
var str4 = str1.concat(str2,str3);
console.log(str4); // Hello World!My Blog!
```
2.加号+
```
// 将"Hello"," World!","My Blog!"三个字符串拼接起来
var str1 = "Hello";
var str2 = " World!";
var str3 = "My Blog!";
var str4 = str1 + str2 + str3;
console.log(str4); // Hello World!My Blog!
```
### 剪切字符串
1.str.slice(start,end):获取[start,end)之间的字符串
若start,end为正数,从前往后计算,获取[start,end)之间的字符串,注意end是开区间,开头第一个字符的下标从0开始
若start,end为负数,从后往前计算,获取[start,end)之间的字符串,末尾第一个字符的下标从-1开始
```
var str = "Hello World!";
//获取str的“llo”
var subStr1 = str.slice(2,5);
console.log(subStr1); // llo
//获取str的“orl”
var subStr2 = str.slice(-5,-2);
console.log(subStr2); //orl
```
2.str.substr(start,length):从下标为start位置开始获取长度为length的字符串。
注意,若start为负数的话,表示从后向前进行计算start的位置,-1表示最后一个字符
```
var str = "Hello World!";
// 获取字符串Hello
var subStr1 = str.substr(0,5);
console.log(subStr1); // Hello
//获取字符串World
var subStr2 = str.substr(-6,5);
console.log(subStr2); // World
```
3.str.substring(start,end):提取[start,end)之间的字符串,注意start,end都要非负
```
var str = "Hello World!";
//获取str的“llo”
var subStr1 = str.substring(2,5);
console.log(subStr1); // llo
```
### 字符串位置方法
1.indexOf(searchvalue,fromindex):从fromindex开始向后寻找searchvalue首次出现的位置,默认为0。
```
// 获取下列字符串的字符‘o’的所有位置
var str = "Hello World! Welcome to my Blog!";
var arr = [];
var pos = str.indexOf('o');
arr.push(pos);
while(true){
pos = str.indexOf('o',pos+1);
if(pos == -1) break;
arr.push(pos);
}
console.log(arr); // [4, 7, 17, 22, 29]
```
1.lastIndexOf(searchvalue,fromindex)从fromindex开始向前寻找searchvalue首次出现的位置,默认为0。
```
// 获取下列字符串的字符‘o’的所有位置
var str = "Hello World! Welcome to my Blog!";
var arr = [];
var pos = str.lastIndexOf('o');
arr.push(pos);
while(true){
pos = str.lastIndexOf('o',pos-1);
if(pos == -1) break;
arr.push(pos);
}
console.log(arr); // [29, 22, 17, 7, 4]
```
### 删除多余空格
trim():去除字符串两端多余的空格
```
//由于输出字符串空格不好看出来,所以输出长度看看
var str = " abc ";
console.log(str.length); // 5
str = str.trim();
console.log(str.length); //3
```
### 比较字符串
str1.localeCompare(str2):
返回0:字符串str1等于参数str2。
返回负数:字符串str1的字典序先于参数str2。
返回正数:字符串str2的字典序后于参数str2。
```
var str1 = "yellow";
console.log(str1.localeCompare("yellow")); //0
console.log(str1.localeCompare("zoo")); //-1
console.log(str1.localeCompare("abc")); //1
```
### 模式匹配
涉及到正则表达式,内容太多,以后专门写个博文总结。 #### 参考文献: - \[1]《javascript高级程序设计》
Javascript字符串的更多相关文章
- JavaScript 字符串实用常操纪要
JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...
- JavaScript 字符串操作
JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...
- JavaScript 字符串常用操作
JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...
- JavaScript 字符串(String) 对象
JavaScript 字符串(String) 对象 String 对象用于处理已有的字符块. JavaScript 字符串 一个字符串用于存储一系列字符就像 "John Doe". ...
- IE JavaScript字符串转换成Date后出现NaN错误
参考的博文:http://blog.csdn.net/zhu7478848/article/details/53388582 在IE浏览器下, JavaScript字符串转换成Date后会出现NaN错 ...
- JavaScript 字符串常用操作纪要
JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...
- JavaScript字符串插入、删除、替换函数
JavaScript字符串插入.删除.替换函数 说明: 以下函数中前两个函数取出查找字符串的前一部分和后一部分,以用于其他函数.注意,调用一次 replaceString(mainStr,search ...
- javascript 字符串方法传参
javascript 字符串方法传参由于嵌套的单引号,双引号过多.有点混乱.. 正确方法如下: ' <td align="left"><input type= ...
- JavaScript 字符串(String)对象
String 对象用于处理已有的字符块. JavaScript 字符串 一个字符串用于存储一系列字符就像 "John Doe". 一个字符串可以使用单引号或双引号: 实例 var ...
- step_by_step_记录一个javascript字符串处理问题
记录一个javascript字符串处理的问题 这一天下班,技术QQ群里的大神提出了一个问题,带着问题去思考. ? '---9890.999008-555555-55555555----' 对于这样的字 ...
随机推荐
- PHP 替换标签和标签内的内容
$filter_arr=array('/#(.*?)#/','/\$(.*?)\$/','/\^(.*?)\^/');//要替换的标签 $content=$data['Monthlys']['cont ...
- iOS极光推送,两次Bundleid不一致( 开发证书没有通过验证 是否重新上传证书)的解决方案
极光在配置ios端推送时,需要上传p12证书,如果遇到如下图:: 证书上传未通过的原因一般有: 1.当前上传的p12证书密码输入有误: 2. 证书导出的时候展开了证书,把个人私钥导了出来,导证书的时候 ...
- Jmeter之Bean shell使用(二)
上一篇Jmeter之Bean shell使用(一)简单介绍了下Jmeter中的Bean shell,本文是对上文的一个补充,主要总结下常用的几种场景和方法,相信这些基本可以涵盖大部分的需求.本节内容如 ...
- android 新建项目中去掉标题栏
1.新建new android application project theme选none 并打钩创建一个Blank Activity 运行如下图所示: 2.若想把标题栏去掉,更改Manifestr ...
- Windows Azure 虚拟机的IP地址操作
Windows Azure上的一个虚拟机对应两个IP地址,VIP和DIP. VIP,公网IPv4地址,动态分配.虚拟机停止(deallocate,在管理控制台上关机或者使用PowerShell关机)后 ...
- MMORPG大型游戏设计与开发(part1 of net)
网络模块的设计,是大型多人在线游戏中比较重要的一部分.我之所以将网络模块放到最前面,是因为许许多多的开发者面对这一块的时候充满了疑惑,而且也觉得很神秘和深奥.这些我们面对到的困难,其实是由于我们对这方 ...
- 怎么解决ZBrush保存历史记录太多问题
经常有用户反映说ZBrush ®保存历史记录太多了,导致文件太大了!模型已经是降低级别保存了,在保存历史记录的时候还是很慢很慢,不知道怎么才能减少ZBrush保存的历史步骤的多少.针对这一问题,小编统 ...
- NOIP2006能量项链[环形DP]
题目描述 在Mars星球上,每个Mars人都随身佩带着一串能量项链.在项链上有N颗能量珠.能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数.并且,对于相邻的两颗珠子,前一颗珠子的尾标记一定 ...
- 虚拟机软件VMware Workstation Pro的安装与使用
聚焦行业最佳实践,BDTC 2016完整议程公布 Java 编程入门(系列) 程序员11月书讯,评论得书啦 免费的知识库,你的知识库 虚拟机软件VMware Workst ...
- flexslider.js和waypoints.js一起用时的巨坑
Flexslider has a callback API where you can execute functions after various actions:https://github.c ...