20个常用的JavaScript字符串方法
摘要: 玩转JS字符串。
- 原文:JS 前20个常用字符串方法及使用方式
- 译者:前端小智
Fundebug经授权转载,版权归原作者所有。
本文主要介绍一些最常用的JS
字符串函数。
1. charAt(x)
charAt(x)
返回字符串中x
位置的字符,下标从 0
开始。
//charAt(x) var myString = 'jQuery FTW!!!'; console.log(myString.charAt(7)); //output: F
2. charCodeAt(x)
`charCodeAt(x)`返回字符串中`x`位置处字符的`unicode`值。 //charAt(position) var message="jquery4u" //alert "113" alert(message.charAt(1)
3. concat(v1,v2..)
concat()
方法用于连接两个或多个字符串,此方法不改变现有的字符串,返回拼接后的新的字符串。
//concat(v1, v2,..) var message="Sam" var final=message.concat(" is a"," hopeless romantic.") //alerts "Sam is a hopeless romantic." alert(final)
4. fromCharcode(c1,c2)
fromCharcode(c1,c2)
转换一组Unicode
值转换为字符。
//fromCharCode(c1, c2,...) console.log(String.fromCharCode(97,98,99,120,121,122)) //output: abcxyz console.log(String.fromCharCode(72,69,76,76,79)) //output: HELLO
5. indexOf(substr, [start])
indexOf
方法搜索并(如果找到)返回字符串中搜索到的字符或子字符串的索引。如果没有找到,则返回-1
。Start
是一个可选参数,指定字符串中开始搜索的位置,默认值为0
。
//indexOf(char/substring) var sentence="Hi, my name is Sam!" if (sentence.indexOf("Sam")!=-1) alert("Sam is in there!")
6. lastIndexOf(substr, [start])
lastIndexOf()
方法返回指定文本在字符串中最后一次出现的索引, 如果未找到,则返回-1
。 “Start
”是一个可选参数,指定字符串中开始搜索的位置, 默认值为string.length-1
。
//lastIndexOf(substr, [start]) var myString = 'javascript rox'; console.log(myString.lastIndexOf('r')); //output: 11
7. match(regexp)
根据正则表达式在字符串中搜索匹配项。如果没有找到匹配项,则返回一个信息数组或null
。
//match(regexp) //select integers only var intRegex = /[0-9 -()+]+$/; var myNumber = '999'; var myInt = myNumber.match(intRegex); console.log(isInt); //output: 999 var myString = '999 JS Coders'; var myInt = myString.match(intRegex); console.log(isInt); //output: null
8. replace(regexp/substr, replacetext)
replace()
方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
//replace(substr, replacetext) var myString = '999 JavaScript Coders'; console.log(myString.replace(/JavaScript/i, "jQuery")); //output: 999 jQuery Coders //replace(regexp, replacetext) var myString = '999 JavaScript Coders'; console.log(myString.replace(new RegExp( "999", "gi" ), "The")); //output: The JavaScript Coders
9. search(regexp)
search()
方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,如果找到,返回与 regexp
相匹配的子串的起始位置,否则返回 -1
。
//search(regexp) var intRegex = /[0-9 -()+]+$/; var myNumber = '999'; var isInt = myNumber.search(intRegex); console.log(isInt); //output: 0
10. slice(start, [end])
slice()
方法可提取字符串的某个部分,返回一个新的字符串。包括字符串从 start
开始(包括 start)到 end
结束(不包括 end
)为止的所有字符。
//slice(start, end) var text="excellent" text.slice(0,4) //returns "exce" text.slice(2,4) //returns "ce"
11. split(delimiter, [limit])
split()
方法用于把一个字符串分割成字符串数组,返回一个字符串数组返回的数组中的字串不包括 delimiter
自身。 可选的“limit
”是一个整数,允许各位指定要返回的最大数组的元素个数。
12. substr(start, [length])
substr()
方法可在字符串中抽取从 start
下标开始的指定数目的字符。返回一个新的字符串,包含从 start
(包括 start 所指的字符) 处开始的 length
个字符。如果没有指定 length
,那么返回的字符串包含从 start
到该字符串的结尾的字符。
//substring(from, to) var text="excellent" text.substring(0,4) //returns "exce" text.substring(2,4) //returns "ce"
13. substring(from, [to])
substring()
方法用于提取字符串中介于两个指定下标之间的字符,方返回的子串包括 start
处的字符,但不包括 stop
处的字符,to
可选,如果省略该参数,那么返回的子串会一直到字符串的结尾。
//substring(from, [to]) var myString = 'javascript rox'; myString = myString.substring(0,10); console.log(myString) //output: javascript
14. toLowerCase()
toLowerCase()
方法用于把字符串转换为小写。
//toLowerCase() var myString = 'JAVASCRIPT ROX'; myString = myString.toLowerCase(); console.log(myString) //output: javascript rox
15. toUpperCase()
toUpperCase()
方法用于把字符串转换为大写。
//toUpperCase() var myString = 'javascript rox'; myString = myString.toUpperCase(); console.log(myString) //output: JAVASCRIPT ROX
16. includes()
includes()
方法用于检查字符串是否包含指定的字符串或字符。
//includes() var mystring = "Hello, welcome to edureka"; var n = mystring.includes("edureka"); //output: True
17. endsWith()
endsWith()
函数检查字符串是否以指定的字符串或字符结束。
//endsWith() var mystr = "List of javascript functions"; var n = mystr.endsWith("functions"); //output: True
18. repeat()
repeat()
构造并返回一个新字符串,该字符串包含被连接在一起的指定数量的字符串的副本。
//repeat() var string = "Welcome to Edureka"; string.repeat(2); //output: Welcome to Edureka Welcome to Edureka
19. valueOf()
valueOf()
方法返回一个String
对象的原始值(primitive value),该值等同于String.prototype.toString()
。
//valueOf() var mystr = "Hello World!"; var res = mystr.valueOf(); //output: Hello World!
20. trim()
trim()
方法会从一个字符串的两端删除空白字符。在这个上下文中的空白字符是所有的空白字符 (space, tab, no-break space 等) 以及所有行终止符字符(如 LF,CR)
//trim() var str = " Hello Edureka! "; alert(str.trim());
代码部署后可能存在的BUG没法实时知道,事后为了解决这些BUG,花了大量的时间进行log 调试,这边顺便给大家推荐一个好用的BUG监控工具 Fundebug。
关于Fundebug
Fundebug专注于JavaScript、微信小程序、微信小游戏、支付宝小程序、React Native、Node.js和Java线上应用实时BUG监控。 自从2016年双十一正式上线,Fundebug累计处理了20亿+错误事件,付费客户有阳光保险、核桃编程、荔枝FM、掌门1对1、微脉、青团社等众多品牌企业。欢迎大家免费试用!
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Java描述设计模式(05):原型模式
本文源码:GitHub·点这里 || GitEE·点这里 一、原型模式简介 1、基础概念 原型模式属于对象的创建模式。通过给出一个原型对象来指明所有创建的对象的类型,然后用复制这个原型对象的办法创建出更多同类型的对象。 2、模式结构 原型模式要求对象实现一个可以“克隆”自身的接口,这样就可以通过复制一个实例对象本身来创建一个新的实例。这样一来,通过原型实例创建新的对象,就不再需要关心这个实例本身的类型,只要实现了克隆自身的方法,就可以通过这个方法来获取新的对象,而无须再去通过new来创建。 3、代码实现 1)、UML关系图 2)、核心角色 这种形式涉及到三个角色: 1)、客户(Client)角色:客户类提出创建对象的请求。 2)、抽象原型(Prototype)角色:这是一个抽象角色,通常由一个Java接口或Java抽象类实现。此角色给出所有的具体原型类所需的接口。 3)、具体原型(Concrete Prototype)角色:被复制的对象。此角色需要实现抽象的原型角色所要求的接口。 3)、基于JDK源码实现 /** * 基于JDK源码方式实现原型模式 */ public class C0...
- 下一篇
阿里巴巴开源 Sentinel 限流方案搭建
Sentinel是阿里开源的一个限流方案框架具有以下特征: 丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。 完备的实时监控:Sentinel 同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至 500 台以下规模的集群的汇总运行情况。 广泛的开源生态:Sentinel 提供开箱即用的与其它开源框架/库的整合模块,例如与 Spring Cloud、Dubbo、gRPC 的整合。您只需要引入相应的依赖并进行简单的配置即可快速地接入 Sentinel。 完善的 SPI 扩展点:Sentinel 提供简单易用、完善的 SPI 扩展接口。您可以通过实现扩展接口来快速地定制逻辑。例如定制规则管理、适配动态数据源等。 一、搭建监控平台 1.下载相应的jar包,地址https://github.com/alibaba/Sentinel/releases 2.启动java -Dserver.port=8080 -Dcsp...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,CentOS7官方镜像安装Oracle11G
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS关闭SELinux安全模块
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7设置SWAP分区,小内存服务器的救世主