JavaScript基础——处理字符串
String对象是迄今为止在JavaScript中最常用的对象。在你定义一个字符串数据类型的变量的任何时候,JavaScript就自定为你创建一个String对象。例如:
var myStr = "Hello world";
当创建一个字符串时,有一些特殊字符是不能直接添加到字符串中的。针对那些字符,JavaScript提供了一组转义码,如下表所示:
String对象的转义码
| 转义码 | 说 明 | 示 例 | 输出字符串 |
| \' | 单引号 | "couldn\'t be" | couldn't be |
| \" | 双引号 | "I \"think" I "am"" | I "think" I "am" |
| \\ | 反斜杠 | "one\\two\\three" | one\two\three |
| \n | 换行符 | "I am\nI said" |
I am I said |
| \r | 回车符 | "to be\ror not" |
to be or not |
| \t | 制表符 | "one\ttwo\tthree" | one two three |
| \b | 退格符 | "correctoin\b\b\bion" | correction |
| \f | 换页符 | "Title A\fTitle B" | Title A 然后 Title B |
你可以使用String对象的length属性确定一个字符串的长度,如下例所示:
var numOfChars = myStr.length;
String对象有许多函数,使你可以以不同的方式访问和操作字符串。用于字符串操作的方法如下表所示:
操作String对象的方法
| 方 法 | 说 明 |
| charAt(index) | 返回指定索引处的字符 |
| charCodeAt(index) | 返回指定索引处的字符的Unicode值 |
| concat(str1,str2,...) | 连接两个或多个字符串,返回连接后的字符串的副本 |
| formCharCode() | 将Unicode值转换成实际的字符 |
| indexOf(subString) | 返回指定的subString值第一次出现的位置。如果没有找到subString,返回-1 |
| lastIndexOf(subString) | 返回指定的subString值最后出现的位置。如果没有找到subString,返回-1 |
| match(regex) | 搜索字符串,并返回正则表达式的所有匹配 |
|
replace(subString/regex), replacementString) |
搜索字符串的字符串 或正则表达式匹配,并用新的子串替换匹配的子串 |
| search(regex) | 基于正则表达式搜索字符串,并返回第一个匹配的位置 |
| slice(start,end) | 返回字符串的start和end(不含)位置之前的部分的一个新字符串 |
| split(sep,limit) | 根据分隔符或正则表达式,把字符串分割为子字符串数组。可选的limit参数定义从头开始执行分割的最大数量 |
| substr(start,length) | 从字符串指定的start位置开始,并按照指定的字符length(长度)提取字符 |
| substring(from,to) | 返回字符索引在from与to(不含)之间的字符 |
| toLowerCase() | 将字符串转换为小写 |
| toUpperCase() | 将字符串转换为大写 |
| valueOf() | 返回原始字符串值 |
1、合并字符串
你可以使用+操作符或使用第一个字符串上的concat()函数将多个字符串合并。例如,在下面的代码中,sentence1和centence2将是相同的:
var word1 = "Today";
var word2 = "is";
var word3 = "tomorrows\'";
var word4 = "yesterday.";
var sentence1 = word1+word2+word3+word4;
var sentence2 = word1.concat(word2,word3,word4);
2、在字符串中搜索子串
要确定一个字符串是否是另一个字符串的子字符串,可以使用indexOf()方法。例如,下面的代码只有当字符串包含单词think时,才把它写入控制台:
var myStr = "I think, therefore I am.";
if (myStr.indexOf("think") != -1){
console.log(myStr);
}
3、在一个字符串中替换单词
另一种常见的String对象的任务是把一个子串替换为另一个。要替换字符串中的单词或短语,可以使用replace()方法。下面的代码用变量username的值来替换文本"<username>":
var username = "Brad";
var output = "<username>please enter your password";
output.replace("<username>",username);
4、将字符串分割成数组
对于字符串,一个非常常见的任务是使用分隔符将它们分割成数组。例如,下面的代码在":"分割符上使用split()方法将一个时间字符串转换成他的基本组成部分的数组:
var t = "12:10:36";
var tArr = t.split(":");
var hour = tArr[0];
var mimute = tArr[1];
var second = tArr[2];
JavaScript基础——处理字符串的更多相关文章
- JavaScript基础:字符串转换函数——String()和toString()
1..toString()可以将所有的的数据都转换为字符串,但是要排除null 和 undefined 例如将false转为字符串类型 <script> var str = false ...
- JavaScript基础06——字符串
字符串的创建: 字符串的创建: var str = "hello world"; //常量,基本类型创建 var str2 = new String("hello wor ...
- 从零开始学习前端JAVASCRIPT — 3、JavaScript基础string字符串介绍
1:字符串 JS中的任何数据类型都可以当作对象来看.所以string既是基本数据类型,又是对象. 2:声明字符串 基本数据类型:var sStr = '字符串'; 对象的方法:var oStr = n ...
- JavaScript基础进阶之常用字符串方法总结
前面三篇文章简单的把JavaScript基础内容过了一遍,我们已经可以用JavaScript写一些简单的代码了. 今天主要总结一下JavaScript中String对象中自带的一些方法,来帮助我们处理 ...
- JavaScript基础
JavaScript基础 JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处 ...
- 前端之JavaScript基础
前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...
- 一步步学习javascript基础篇(3):Object、Function等引用类型
我们在<一步步学习javascript基础篇(1):基本概念>中简单的介绍了五种基本数据类型Undefined.Null.Boolean.Number和String.今天我们主要介绍下复杂 ...
- Javascript基础回顾 之(一) 类型
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- JavaScript 基础回顾——对象
JavaScript是基于对象的解释性语言,全部数据都是对象.在 JavaScript 中并没有 class 的概念,但是可以通过对象和类的模拟来实现面向对象编程. 1.对象 在JavaScript中 ...
随机推荐
- iOS开发——UI进阶篇(十四)modal
一.modal与pushmodal从下面往上盖住原来的控制器,一般上一个控制器和下一个控制器没有什么关联时用modal,比如联系人的加号跳转页面,任何控制器都可以用modal push一般是上下文有关 ...
- Unity手游之路<九>自动寻路Navmesh之高级主题
http://blog.csdn.net/janeky/article/details/17492531 之前我们一起学习了如何使用Navmesh组件来实现最基本的角色自动寻路.今天我们再继续深入探索 ...
- linux文件远程传输客户端shell脚本与分布式客户机时间同步脚本
#!/bin/bash # 将代码和脚本传送至worker节点 # 改变当前工作目录 cd ${AMAZONCRAWLER_HOME} #读取worker节点ip列表 i= while read li ...
- putty快速设置本地代理
sudo plink -D 127.0.0.1:8888 -l root -P 443 -pw xxx 104.xxx.xxx.xxx
- C/C++程序员必须熟练应用的开源项目[转]
作为一个经验丰富的C/C++程序员, 肯定亲手写过各种功能的代码, 比如封装过数据库访问的类, 封装过网络通信的类,封装过日志操作的类, 封装过文件访问的类, 封装过UI界面库等, 也在实际的项目中应 ...
- CLR via C# 随记
使用C# 编译器的方法: 1.csc.exe位于C:\Windows\Microsoft.NET\Framework\vxxxxx下面,将对应版本的路径配置到环境变量path中,如将";C: ...
- CEF3开发者系列之进程和线程
CEF3是一个多进程架构框架,如果有了解过chromium的进程架构的,那么就很容易了解CEF3的多进程了.打开CEF3源代码中发布的cefclient实例,如果打开的页面带有flash或者其他插件. ...
- ASM:《X86汇编语言-从实模式到保护模式》第12章:存储器的保护
12章其实是11章的拓展,代码基本不变,就是在保护模式下展开讨论. ★PART1:存储器的保护机制 1. 修改段寄存器的保护 当执行把段选择子传到段寄存器的选择器部分的时候,处理器固件在完成传送之前, ...
- ajax 删除一条数据
代码: 对这一段话的理解:先找到需要删除的节点,以及节点里的文本:用Ajax 发送请求,请求方式为POST ,请求内容为需要删除记录的文件,dataType定义数据类型Json,通常都是Json,da ...
- 字符串与byte数组转换
string weclome=""; byte[] data = new byte[1024]; //字符串转byte数组 data = Encoding.ASCII.GetByt ...