全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

JavaScript中String对象的方法介绍

1.字符方法

1.1 charAt() 方法,返回字符串中指定位置的字符。

var question = "Do you like JavaScript?";
alert(question.charAt(5)); //"u"

字符串 "Do you like JavaScript?" 的长度为23,即位置从0到22。指定位置5处的字符是"u"。

1.2 charCodeAt() 方法,返回字符串中指定位置的字符编码。

var question = "Do you like JavaScript?";
alert(question.charCodeAt(5)); //"117"

位置5处的字符"u"的字符编码是"117"。

charAt() 和 charCodeAt() 都是针对单个字符进行操作的方法。

2.字符串操作方法

这个小节的字符串操作方法是关于创建新字符串的方法。这些方法包括 concat()、slice()、substring()、substr()。

concat() 是通过拼接的方式创建新的字符串,slice()、substring()、substr() 是通过提取的方式创建新的字符串。

这四种方法不会改变原始字符串。

2.1 concat() 方法,将一个或多个字符串拼接起来,返回新的字符串。不改变原始字符串。

concat() 方法可以接受一个或多个参数。

concat() 方法接受一个参数。

var love = "I love ";
var result = love.concat("you");
alert(result); //"I love you"
alert(love); //"I love "

love 调用了 concat() 方法,返回 "I love you",love 的值并没有改变。

concat() 方法接受多个参数。

var love = "I love ";
var result = love.concat("you"," very"," much","!");
alert(result); //"I love you very much!"
alert(love); //"I love "

不过,在实践中,通常用 + 号操作符将字符串拼接在一起。

2.2 slice()、substring()、substr() 方法,通过提取原始字符串的部分或全部来创建新的字符串,返回创建后的新字符串,不改变原始字符串。

slice()、substring()、substr() 方法可以接受一个或两个参数,这些参数为数字,可以是正值参数,也可以是负值参数。

2.2.1 参数为正值时

传入两个参数的情况

对于 slice() 、substring() ,第一个参数为提取的开始位置(包括开始位置的字符),第二个参数为提取的结束位置(不包括结束位置的字符)。

对于 substr(),第一个参数为提取的开始位置(包括开始位置的字符),第二个参数为提取的字符个数。

 var hello = "I love JavaScript!";
 alert(hello.slice(7,11)); //"Java"
 alert(hello.substring(7,11)); //"Java"
 alert(hello.substr(7,11)); //"JavaScript!"

字符串 "I love JavaScript!" 长度为18,即位置从0到17。第7位的字符是 "J",第11位的字符是 "S"。

slice()、substring() 提取的子字符串是从第7位开始(包括第7位的 "J")到第11位结束(不包括第11位的 "S"),于是用这两个方法提取的新字符串是 "Java"。而 substr() 则是从第7位 "J" 开始(包括第7位的 "J"),提取11个字符,最后提取的新字符串为 "JavaScript!"。

传入一个参数的情况

参数为正值,传入一个参数时,slice()、substring()、substr() 方法提取原理相同,即从参数的位置开始提取(包括开始位置的字符),一直提取到原始字符串的最后一个字符(包括最后一个字符)。

var hello = "I love JavaScript!";
alert(hello.slice(7)); //"JavaScript!" 
alert(hello.substring(7)); //"JavaScript!"
alert(hello.substr(7)); //"JavaScript!"

传入了一个参数7,即从第7位开始(包括第7位的 "J"),一直提取到原始字符串的最后一位(包括最后一位的 "!")。于是,只有一个参数,且参数为正值时,slice()、substring()、substr() 方法返回的新字符串相同。

2.2.2 参数为负值时,不管是一个参数还是两个参数

slice() 方法会将传入的所有负值与字符串长度相加。

substring() 方法会将传入的所有负值都转化为0。

substr() 方法,若第一个参数是负值,则将负值与字符串长度相加;若第二个参数是负值,则将其转化为0。

var hello = "I love JavaScript!";
alert(hello.slice(-11));  //"JavaScript!" 
alert(hello.substring(-11)); //"I love JavaScript!"
alert(hello.substr(-11));  //"JavaScript!"
alert(hello.slice(-11,-9)); //"Ja" 
alert(hello.substring(-11,-9)); //""(空字符串)
alert(hello.substr(-11,-9)); //""(空字符串)

当传入一个负值参数-1时,

slice() 将负值参数与字符串长度相加,前面提到过,字符串 "I love JavaScript!" 的长度为18,于是 slice(-11) 即相当于 slice(7),即从第7位开始提取,最后提取的子字符串为 "JavaScript!";

substring() 会将负值转化为0,substring(-11) 相当于 substring(0),即从第0位开始提取,最后提取的子字符串为 "I love JavaScript!";

substr() 将负值参数与字符串长度相加,substr(-11) 相当于 substr(7),即从第7位开始提取,最后提取的子字符串为 "JavaScript!"。

当传入参数-11,-9时,

slice() 将所有负值参数与字符串长度相加,slice(-11,-9) 相当于 slice(7,9),最后提取的子字符串为 "Ja";

substring() 会将所有负值转化为0,substring(-11,-9) 相当于 substring(0,0),即从第0位开始,第0位结束,即提取的是空字符串;

substr() 将第一个参数-11与字符串长度相加,将第二个参数-9转化为0,substr(-11,-9) 相当于 substr(7,0),即从第7位开始,提取0个字符串,即也是空字符串。

3.字符串位置方法

indexOf() 方法和 lastIndexOf() 方法,返回要检索的子字符串在原始字符串中第一次出现的位置。

indexOf() 方法从原始字符串开头向后检索子字符串,lastIndexOf() 方法从原始字符串末尾向前检索子字符串。

indexOf() 方法和 lastIndexOf() 方法接受一个必选参数。

var test = "balala balala balala";
alert(test.indexOf("a")); //"1"
alert(test.lastIndexOf("a")); //"19"

indexOf() 从开始位置向后检索子字符串 "a","a" 第一次出现的位置是1;lastIndexOf() 从末尾位置向前检索子字符串 "a","a" 第一次出现的位置是19。

如果没有找到要检索的子字符串,则这两个方法都会返回-1。

var test = "balala balala balala";
alert(test.indexOf("h")); //"-1"
alert(test.lastIndexOf("h")); //"-1"

indexOf() 方法和 lastIndexOf() 方法接受第二个可选参数,表示从原始字符串的哪个位置开始。

var test = "balala balala balala";
alert(test.indexOf("a",7)); //"8"
alert(test.lastIndexOf("a",7)); //"5"

indexOf("a",7) 从第7位向后检索子字符串 "a","a" 第一次出现的位置是8;lastIndexOf("a",7) 从第7位向前检索子字符串 "a","a" 第一次出现的位置是5。

4.字符串大小写换换方法

ECMAScript  中涉及字符串大小写转换的方法有4个:toUpperCase()、toLocaleUpperCase()、toLowerCase()、toLocaleLowerCase()

toUpperCase() 和 toLowerCase() 是典型的方法,toLocaleUpperCase() 和 toLocaleLowerCase() 是针对当地地区的方法,以保证字符串正确的转换。

在不知道自己的代码在哪种语言环境中运行时,使用针对当地地区的方法更稳妥一些。

var test = "balala balala balala";
 alert(test.toLocaleUpperCase()); //"BALALA BALALA BALALA"
 alert(test.toUpperCase());  //"BALALA BALALA BALALA"
 alert(test.toLocaleLowerCase()); //"balala balala balala"
 alert(test.toLowerCase());  //"balala balala balala"

5.trim()方法

trim() 方法会创建原始字符串的副本,并删除前置和后缀的所有空格,然后返回结果,不会改变原始字符串。

 var test = " balala balala balala ";
 var test1 = test.trim();
 alert(test1); //"balala balala balala"
 alert(test); // " balala balala balala "
 alert(test1.length); //"20"
 alert(test.length); //"28"

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# js  # string对象的方法  # JavaScript之String常见的方法详解  # 用jQuery将JavaScript对象转换为querystring查询字符串的方法  # JavaScript基于扩展String实现替换字符串中index处字符的方法  # JavaScript中的toString()和toLocaleString()方法的区别  # javascript中数组(Array)对象和字符串(String)对象的常用方法总结  # JavaScript获取URL中参数querystring的方法详解  # 梳理总结JavaScript的23个String方法  # 第二个  # 即从  # 第一个  # 转化为  # 会将  # 多个  # 长度为  # 空字符串  # 这两个  # 不包括  # 则将  # 操作方法  # 不改变  # 自己的  # 的是  # 都是  # 是一个  # 则是  # 是从  # 如果没有 


相关文章: 专业公司网站制作公司,用什么语言做企业网站比较好?  如何用AWS免费套餐快速搭建高效网站?  如何快速选择适合个人网站的云服务器配置?  香港服务器网站生成指南:免费资源整合与高速稳定配置方案  如何批量查询域名的建站时间记录?  香港服务器租用费用高吗?如何避免常见误区?  ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?  营销式网站制作方案,销售哪个网站招聘效果最好?  C++中引用和指针有什么区别?(代码说明)  建站之星CMS五站合一模板配置与SEO优化指南  专业网站制作服务公司,有哪些网站可以免费发布招聘信息?  建站主机选虚拟主机还是云服务器更好?  网站app免费制作软件,能免费看各大网站视频的手机app?  广州建站公司哪家好?十大优质服务商推荐  已有域名如何免费搭建网站?  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  如何通过云梦建站系统实现SEO快速优化?  无锡营销型网站制作公司,无锡网选车牌流程?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  郑州企业网站制作公司,郑州招聘网站有哪些?    高防服务器租用如何选择配置与防御等级?  七夕网站制作视频,七夕大促活动怎么报名?  官网网站制作腾讯审核要多久,联想路由器newifi官网  建站之星如何实现五合一智能建站与营销推广?  已有域名如何快速搭建专属网站?  网站制作知乎推荐,想做自己的网站用什么工具比较好?  阿里云高弹*务器配置方案|支持分布式架构与多节点部署  如何在云主机上快速搭建网站?  如何用VPS主机快速搭建个人网站?  如何高效生成建站之星成品网站源码?  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  建站之星24小时客服电话如何获取?  如何快速查询域名建站关键信息?  如何在IIS服务器上快速部署高效网站?  简单实现Android文件上传  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  如何在橙子建站上传落地页?操作指南详解  宝塔建站无法访问?如何排查配置与端口问题?  在线教育网站制作平台,山西立德教育官网?  如何快速搭建高效简练网站?  C#怎么使用委托和事件 C# delegate与event编程方法  山东网站制作公司有哪些,山东大源集团官网?  如何高效配置IIS服务器搭建网站?  ,在苏州找工作,上哪个网站比较好?  详解jQuery中基本的动画方法  如何快速生成高效建站系统源代码?  如何用腾讯建站主机快速创建免费网站?  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。