JavaScript 字符串处理详解
一、创建字符串
创建一个字符串,将一组字符串用引号包起来,将其赋值给一个字符串变量。
var JsStr="Hello,JavaScript String!";
二、字符串查找方法
1.字符方法charAt(),charCodeAt(),fromCharCode()
(1)charAt()函数
功能:返回字符串中指定位置的字符;
语法:String.charAt(n);
参数:n--字符在字符串中的位置(字符串第一个字符的位置为0);
返回值:返回n位置的字符,如果n不在0到(string.length-1)之间,将返回空字符串。
示例:

(2)charCodeAt()函数
功能:返回指定位置的字符的Unicode编码;
语法:String.charCodeAt(n);
参数:n--字符在字符串中的位置(字符串第一个字符的位置为0);
返回值:返回n位置的Unicode编码(此编码为16位,在0-65536之间),如果n不在0到(string.length-1)之间,将返回NaN。
示例:

(3)fromCharCode()函数
功能:接受指定的Unicode值,然后返回一个字符串;
语法:String.fromCharCode(numX,numX...);
参数:numX--必须值,一个或多个Unicode值,通过fromCharCode函数得到Unicode值得字符串;
返回值:字符串;
特性:静态方法,实为构造函数String()的属性;
示例:

小结:
charAt()和charCodeAt()之间存在共性,其功能都是根据下标查找指定字符,参数n为要查询的字符下标,有效范围为0~JsStr.length-1之间;charCodeAt()和fromCharCode()互为反向操作。
2.位置方法indexOf(),lastIndexOf()
(1)indexOf()函数
功能:检索指定字符串在字符串中首次出现的位置;
语法:string.indexOf(searchvalue,fromindex);
参数:searchvalue--必需,要查找的子字符串;
fromindex--可选的整数参数。合法取值范围为0到string.length-1,负值时默认为0,如果省略词此参数默认将从string的开始位置开始查找;
返回值:返回子字符串searchvalue在字符串sring中首次出现的位置,没有在字符串string中的子字符串searchvalue,返回-1;
示例:

(2)lastIndexOf()函数
功能:检索指定字符串在字符串中最后出现(匹配)的位置;
语法:string.lastIndexOf(searchvalue,fromindex);
参数:searchvalue--必需,要查找的子字符串;
fromindex--可选的整数参数。合法取值范围为0到string.length-1,负值时默认为0,如果省略词此参数默认将从string的最后位置开始查找;
返回值:返回子字符串searchvalue在字符串sring中最后出现的位置,没有在字符串string中的子字符串searchvalue,返回-1;
示例:

小结:
indexOf()和lastIndexOf()函数存在共性,功能都是查找指定子字符串在字符串中的下标,参数要求相同,指定子字符串在字符串中时返回首次出现的下标,否则返回-1。
3.匹配方法match(),search(),replace(),split()
(1)match()函数
功能:检索字符串中指定的值,找到一个或多个正则表达式的匹配;
语法:string.match(searchvalue);
string.match(regexp);
参数:searchvalue--必需,要检索的字符串值;
regexp--必需。要匹配的Regexp对象;
返回值:存放匹配结果的数组,数组的内容依赖于regexp是否具有全局变量g;
示例:

(2)search()函数
功能:检索字符串中指定的值,或检索与正则表达式相匹配的子字符串;
语法:string.search(regexp);
参数: regexp--必需。该参可以是需要在字符串中检索的子字符串,也可以是需要检索的Regexp对象;
返回值:string字符串中第一个与regexp相匹配的子字符串的起始位置,如果没有匹配到则返回-1;
示例:

(3)replace()函数
功能:用来查找某字符串并将其替换为另一个字符串;
语法:string.replace(regexp/substr,repalcement);
参数: regexp/substr--必需。指定需要替换的子字符串或RegExp对象
repalcement--可选。一个字符串,指定替换文本或生成替换文本的函数;
返回值:一个新的字符串,替换后得到的。
示例:

(4)split()函数
功能:根据指定分隔符将字符串分割成多个子字符串,并返回成数组;
语法:string.split(separator,howmany);
参数: separator--必需。字符串或正则表达式,从参数指定的地方分割字符串;
howmany--可选。指定返回数组的最大长度,默认返回数组中所有元素;
返回值:一个字符串数组,返回数组中的字符串不包含separator自身;
示例:

三、操作方法
1.拼接方法
(1)concat()函数
功能:用于连接两个个或多个字符串和两个或多个数组;
语法:arrayObject.concat(arrayX,arrayX...);
参数:arrayX--必需。该参数可以是具体的值,也可以是数据对象,可以任意多个;
返回值:返回新的字符串或数组
示例:

2.截取方法
(1)根据下标截取字符串slice()
功能:根据下标返回已有字符串或数组中选定的元素;
语法:arrayObject.slice(start,end);
参数:start--必需。开始下标,负数时从数组或字符串的尾部开始算起位置;
end--可选。结束下标,负数时从数组或字符串的尾部开始算起位置;
返回值:返回新的字符串或数组;
示例:

(2)根据下标截取字符串substring()
功能:提取两个下标之间的字符
语法:string.slice(start,end);
参数:start--必需。开始下标,非负数;
end--可选。结束下标,非负数;
返回值:返回提取字符串;
示例:

(2)根据长度截取字符串substr()
功能:提取从开始下标的指定数目字符;
语法:string.slice(start,length);
参数:start--必需。开始下标,负数时从字符串的尾部开始算起的位置;
length--可选。子字符串中的字符数。必须是数值;
返回值:返回提取字符串;
示例:

2.空格处理
(1)清除字符串前置和后缀空格方法trim();
(2)清除字符左边空格方法trimLeft();
(3)清除字符右边空格方法trimRight();
示例:

3.比较方法localeCompare()
功能:用本地特定顺序比较两个字符串
语法:stringVar.localeCompare(stringExp);
参数:stringVar--必需。要比较的第一个字符串;
stringExp--必需。要比较的第二个字符串;
返回值:返回stringVar和stringEx比较结果(-1:如果stringVar排在stringExp前;+1:如果stringVar排在stringExp后,如果两个字符相等,则为0(零));
示例:

三、编码方法
1.字符串常规编码与解码escape()和unescapae()函数
(1)escape()编码函数
功能:对字符串进行编码,这样可以在所有计算机上读取该字符串;
语法:escape(stringvar);
参数:stringvar--必需。要转义或编译的字符串;
返回值:已编译的stringvar副本;
(2)unescape()编码函数
功能:对unescape()函数编码的字符串解码;
语法:unescape(stringvar);
参数:stringvar--必需。要反解码或反转义的字符串;
返回值:已解码的stringvar副本;
(1)(2)示例:

2.URI字符串编码与解码encodeURI(),decodeURI()函数
(1)encodeURI()编码函数
功能:把字符串作为URI进行编码
语法:encodeURI(stringURI);
参数:stringURI--必需。一个字符串,含有URI或者其他编码的文本;
返回值:已编译的stringURI副本;
(2)decodeURI()解码函数
功能:对encodeURI()函数编码的字符串解码;
语法:decodeURI(stringURI);
参数:stringURI--必需。含有解码的URI或者其他要解码的文本;
返回值:已解码的stringURI副本;
(1)(2)示例:

2.URI组件编码与解码encodeURIComponent(),decodeURIComponent()函数
(1)encodeURI()编码函数
功能:把字符串作为URI组件进行编码
语法:encodeURIComponent(stringURI);
参数:stringURI--必需。一个字符串,含有URI或者其他编码的文本;
返回值:已编译的stringURI副本;
(2)decodeURIComponent()解码函数
功能:对encodeURIComponent()函数编码的字符串解码;
语法:decodeURIComponent(stringURI);
参数:stringURI--必需。含有解码的URI或者其他要解码的文本;
返回值:已解码的stringURI副本;
(1)(2)示例:

四、转换方法
1.转为大写toUpperCase()和toLocaleUpperCase()函数
功能:把小写字符串转为大写;
语法:stringvar.toUpperCase(),stringvar.toLocaleUpperCase();
返回值:字符串,其中所有小写字符都被转换为大写字符;
示例:

2.转为小写toLowerCase()和toLocaleLowerCase()函数
功能:把大写字符串转为小写;
语法:stringvar.toLowerCase(),stringvar.toLocaleLowerCase();
返回值:字符串,其中所有大写字符都被转换为小写字符;
示例:

JavaScript 字符串处理详解的更多相关文章
- JavaScript 字符串处理详解【转自:http://www.cnblogs.com/mondLei/p/4096855.html】
一.创建字符串 创建一个字符串,将一组字符串用引号包起来,将其赋值给一个字符串变量. var JsStr="Hello,JavaScript String!"; 二.字 ...
- Javascript字符串常用方法详解
字符串 字符串就是一个或多个排列在一起的字符,放在单引号或双引号之中. 'abc'"abc" length属性 js里的字符串类似于数组,都是一个一个字符拼凑在一起组成的,因此可以 ...
- jquery $.trim()去除字符串空格详解
jquery $.trim()去除字符串空格详解 语法 jQuery.trim()函数用于去除字符串两端的空白字符. 作用 该函数可以去除字符串开始和末尾两端的空白字符(直到遇到第一个非空白字符串为止 ...
- JavaScript严格模式详解
转载自阮一峰的博客 Javascript 严格模式详解 作者: 阮一峰 一.概述 除了正常运行模式,ECMAscript 5添加了第二种运行模式:"严格模式"(strict m ...
- js课程 1-3 Javascript变量类型详解
js课程 1-3 Javascript变量类型详解 一.总结 一句话总结:js对象点(属性方法),json对象冒号(属性方法).属性和方法区别只有一个括号. 1.json对象中的函数的使用? 函数名 ...
- JavaScript数组方法详解
JavaScript数组方法详解 JavaScript中数组的方法种类众多,在ES3-ES7不同版本时期都有新方法:并且数组的方法还有原型方法和从object继承的方法,这里我们只介绍数组在每个版本中 ...
- JavaScript(4)---BOM详解
JavaScript(4)---BOM详解 之前写过一篇有关DOM的博客:JavaScript(2)---DOM详解 DOM有个顶级对象叫:document.同样BOM中也有顶级对象叫 window. ...
- Java 字符串格式化详解
Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ...
- 从mixin到new和prototype:Javascript原型机制详解
从mixin到new和prototype:Javascript原型机制详解 这是一篇markdown格式的文章,更好的阅读体验请访问我的github,移动端请访问我的博客 继承是为了实现方法的复用 ...
随机推荐
- Think twice before doing~
1.遇到任何矛盾,对事不对人. 2.接到朋友等人的求助电话后,一定要先问清楚对方有什么事情,然后再告诉他(她)能不能帮她(他). 3.如果没有十足的把握和必要,就不要轻易说假话. 4.少提自己的私事, ...
- SQL 一条记录的的两个字段值相同与不同的查询
select * from (select xm,je from table) a , (select xm01,je01 from table) bwhere a.xm = b.xm01and a. ...
- DOM编程的性能问题
用脚本进行DOM操作的代价很昂贵,它是富Web应用中最常见的性能瓶颈. 浏览器中的DOM:天生就慢 DOM(文档对象模型)是独立于语言的,但在浏览器中的接口是用JavaScript实现的.两个相互独立 ...
- Django基础,Day4 - views 详解
在Django中,网页和其他内容是通过视图传递的.每个视图由一个简单的Python函数表示,Django将通过检查请求的URL(准确地说,是域名后面的部分URL)来选择一个视图. 例如,用户在浏览器中 ...
- 【转载学习前辈的经验】-- Mistakes I made (as a developer) 我(作为一名开发者)所犯过的错误
我 2006 年开始工作,至今已经 10 年.10 年是个里程碑,我开始回顾自己曾经犯过的错误,以及我希望从同行那里得到什么类型的忠告.一切都在快速改变,10 年了,我不能确定这些秘诀是否还有用. 不 ...
- Ajax我选择这样入门
什么是AJAX? AJAX的意思就是异步的JavaScript和XML.简而言之,它是使用XMLHttpRequest对象与服务器端通信的脚本语言.它可以发送及接收各种格式的信息,包括JSON.XML ...
- MySQL报错:Got error 28 from storage engine
今天碰到数据库出错: Got error 28 from storage engine 查了一下,数据库文件所在的盘应该没事,应该是数据库用的临时目录空间不够 问题原因: 磁盘临时空间不够导致. 解决 ...
- pyqt信号和槽应用举例
第一篇手写随笔. 项目的部分代码: 在子线程中改变主窗体的标签. class MyForm(QDialog): def __init__(self, parent=None): self.config ...
- css text-overflow:ellipsis 文字多余剪切
text-overflow: ellipsis;多度剪切white-space: nowrap;禁止换行overflow: hidden;多余隐藏
- c++虚析构函数
虚析构函数的作用主要是当通过基类指针删除派生类对象时,调用派生类的析构函数(如果没有将不会调用派生类析构函数) #include <iostream> using namespace st ...