Javascript字符串常用方法详解


Posted in Javascript onJuly 21, 2016

字符串

字符串就是一个或多个排列在一起的字符,放在单引号或双引号之中。

'abc'
"abc"

length属性

js里的字符串类似于数组,都是一个一个字符拼凑在一起组成的,因此可以用length属性取得字符串的长度

var str = "hello"
str.length; // 5

字符串常用的一些方法

1. charAt()

str.charAt(n)

=> 返回字符串的第 n 个字符,如果不在 0~str.length-1之间,则返回一个空字符串。

var str = "javascript";
str.charAt(2); //'v'
str.charAt(12); //''

2. indexOf()

indexOf(substr[,start])

=> 返回 substr 在字符串 str 中首次出现的位置,从 start 位置开始查找,如果不存在,则返回 -1。

start可以是任意整数,默认值为 0。如果 start < 0 则查找整个字符串(如同传进了 0)。如果 start >= str.length,则该方法返回 -1,除非被查找的字符串是一个空字符串,此时返回 str.length.

var str = "javascript";
str.indexOf('s'); // 1
str.indexOf('s',6); // -1
str.indexOf('',11); // 10
str.indexOf('',8); // 8

3. lastIndexOf()

lastIndexOf(substr[,start])

= > 返回 substr 在字符串 str 中最后出现的位置,从 start 位置 向前开始查找,如果不存在,则返回 -1。

'lastindex'.lastIndexOf('a'); // 1

4. substring()

str.substring(start[, end])

= > 返回从 start 到 end(不包括)之间的字符,start、end均为 非负整数。若结束参数(end)省略,则表示从start位置一直截取到最后。

var str = 'abcdefg';
str.substring(1, 4); //"bcd"
str.substring(1); // "bcdefg"
str.substring(-1); //"abcdefg" 传入负值时会视为0

5. slice()

str.slice(start[,end])

= > 返回从 start 到 end (不包括)之间的字符,可传负值

var str = 'this is awesome';
str.slice(4, -1); //" is awesom"

6. substr()

str.slice(start[,end])

= > 返回 str 中从指定位置开始到指定长度的子字符串,start可为负值

var str = "Just give me a reason";
str.substr(5, 10); // "give me a "
str.substr(-4, 2); // "as"

7. replace()

str.replace(regexp|substr, newSubStr|function)

= > 替换 str 的子字符串

var str = "do you love me";
str.replace('love','hate'); // "do you hate me"

8. search()

str.search(regexp)

= > 查找 str 与一个正则表达式是否匹配。如果匹配成功,则返回正则表达式在字符串中首次匹配项的索引;否则,返回 -1。如果参数传入的是一个非正则表达式对象,则会使用 new RegExp(obj) 隐式地将其转换为正则表达式对象

var str = 'I love JavaScript!';
str.search(/java/); // -1
str.search(/Java/); // 7
str.search(/java/i); // 7
str.search('Java'); // 7

9. match()

str.match(regexp)

= > 返回一个包含匹配结果的数组,如果没有匹配项,则返回 null。如果参数传入的是一个非正则表达式对象,则会使用 new RegExp(obj) 隐式地将其转换为正则表达式对象

var str = 'Javascript java';
str.match(/Java/); // ["Java"]
str.match(/Java/gi); // ["java", "Java"]
str.match(/ab/g); // null

10. split()

str.split([separator][, limit])

= >返回一个数组,分隔符 separator 可以是一个字符串或正则表达式

var str = "Hello?World!";
str.split(); // ["Hello?World!"]
str.split(''); // ["H", "e", "l", "l", "o", "?", "W", "o", "r", "l", "d", "!"]
str.split('?'); // ["Hello", "World!"]
str.split('',5); // ["H", "e", "l", "l", "o"]

11. trim()

str.trim()

= > 去除 str 开头和结尾处的空白字符,返回 str 的一个副本,不影响字符串本身的值

var str = ' abc ';
str.trim(); // 'abc'
console.log(str); // ' abc '

12. toLowerCase()

str.toLowerCase()

= > 将 str 转换为小写,并返回 str 的一个副本,不影响字符串本身的值

var str = 'JavaScript';
str.toLowerCase(); // 'javascript'
console.log(str); // 'JavaScript'

13. toUpperCase()

str.toUpperCase()

= > 将 str 转换为大写,并返回 str 的一个副本,不影响字符串本身的值

var str = 'JavaScript';
str.toUpperCase(); // 'JAVASCRIPT'
console.log(str); // 'JavaScript'

以上所述是小编给大家介绍的Javascript字符串常用方法详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jquery 最简单的属性菜单
Oct 08 Javascript
分享一个用Mootools写的鼠标滑过进度条改变进度值的实现代码
Dec 12 Javascript
JavaScript 垃圾回收机制分析
Oct 10 Javascript
js字符串转成JSON
Nov 07 Javascript
javascript中数组的concat()方法使用介绍
Dec 18 Javascript
浅谈JavaScript中的字符编码转换问题
Jul 07 Javascript
HTML5游戏引擎LTweenLite实现的超帅动画效果(附demo源码下载)
Jan 26 Javascript
实用jquery操作表单元素的简单代码
Jul 04 Javascript
JS正则截取两个字符串之间及字符串前后内容的方法
Jan 06 Javascript
详解angular路由高亮之RouterLinkActive
Apr 28 Javascript
Node.js的进程管理的深入理解
Jan 09 Javascript
vue实现购物车的监听
Apr 20 Javascript
jQuery实现鼠标经过购物车出现下拉框代码(推荐)
Jul 21 #Javascript
javascript实现滚动效果的数字时钟实例
Jul 21 #Javascript
如何用JS判断两个数字的大小
Jul 21 #Javascript
AngularJs基本特性解析(一)
Jul 21 #Javascript
jQuery表单验证插件解析(推荐)
Jul 21 #Javascript
JavaScript 数组- Array的方法总结(推荐)
Jul 21 #Javascript
完美JQuery图片切换效果的简单实现
Jul 21 #Javascript
You might like
AMFPHP php远程调用(RPC, Remote Procedure Call)工具 快速入门教程
2010/05/10 PHP
windows下zendframework项目环境搭建(通过命令行配置)
2012/12/06 PHP
php 调用百度sms来发送短信的实现示例
2018/11/02 PHP
Laravel 验证码认证学习记录小结
2019/12/20 PHP
javascript jQuery $.post $.ajax用法
2008/07/09 Javascript
理清apply(),call()的区别和关系
2011/08/14 Javascript
调试Javascript代码(浏览器F12及VS中debugger关键字)
2013/01/25 Javascript
基于jQuery仿淘宝产品图片放大镜代码分享
2020/06/23 Javascript
jQuery实现图片预加载效果
2015/11/27 Javascript
jQuery实现的左右移动焦点图效果
2016/01/14 Javascript
第二次聊一聊JS require.js模块化工具的基础知识
2016/04/17 Javascript
郁闷!ionic中获取ng-model绑定的值为undefined如何解决
2016/08/27 Javascript
Vuejs第七篇之Vuejs过渡动画案例全面解析
2016/09/05 Javascript
JS之获取样式的简单实现方法(推荐)
2016/09/13 Javascript
JS常用知识点整理
2017/01/21 Javascript
ReactNative踩坑之配置调试端口的解决方法
2017/07/28 Javascript
通过js动态创建标签,并设置属性方法
2018/02/24 Javascript
vue组件详解之使用slot分发内容
2018/04/09 Javascript
基于ionic实现下拉刷新功能
2018/05/10 Javascript
vue下使用nginx刷新页面404的问题解决
2019/08/02 Javascript
详解vue之自行实现派发与广播(dispatch与broadcast)
2021/01/19 Vue.js
[01:18]DOTA2超级联赛专访hanci ForLove淘汰感言曝光
2013/06/04 DOTA
Python内置数据结构与操作符的练习题集锦
2016/07/01 Python
Python实现生成随机日期字符串的方法示例
2017/12/25 Python
python3判断url链接是否为404的方法
2018/08/10 Python
使用Pandas将inf, nan转化成特定的值
2019/12/19 Python
想学画画?python满足你!
2020/12/24 Python
canvas里面如何基于随机点绘制一个多边形的方法
2018/06/13 HTML / CSS
移动端html5判断是否滚动到底部并且下拉加载
2019/11/19 HTML / CSS
澳大利亚领先的孕妇服装品牌:Mamaway
2018/08/14 全球购物
社区优秀志愿者先进事迹
2014/05/09 职场文书
学雷锋主题班会教案
2015/08/13 职场文书
2016特色励志班级口号
2015/12/24 职场文书
pytorch 预训练模型读取修改相关参数的填坑问题
2021/06/05 Python
python机器学习创建基于规则聊天机器人过程示例详解
2021/11/02 Python
python解析json数据
2022/04/29 Python