JavaScript中ES6字符串扩展方法


Posted in Javascript onAugust 26, 2016

es6这个String对象倒是扩展了不少方法,但是很多都是跟字符编码相关,个人选了几个感觉比较常用的方法;

includes 搜索字符的神器

还记得我们之前如何判断某个字符串对象是否包含特地字符的吗?

var str='google';
if(str.indexOf('o')>-1){
console.log('yes');
}else{
console.log('no');
}

indexOf本来只是一个获取字符对应位置的方法,因为找到不到会返回-1这个值,就成了判断是否包含的方法,includes则就是判断是否包含的直接返回布尔值;

let str='google';
if(str.includes('o')){
console.log('yes');
}else{
console.log('no');
}

这样更符合语义化,indexOf就是负责获取位置,includes负责判断包含关系;

startsWith ,endsWith 轻松定首尾

startsWith用于判断是否位于头部,endsWith判断是否位于尾部,可以说这两个方法是includes方法的扩展;

let str='google';
console.log(str.startsWith('g')); //true
console.log(str.endsWith('e')); //true

repeat 懒人福利

顾名思义,这个方法就是可以获取字符串重复N次后的方法;

let str='google';
console.log(str.repeat(3)); //googlegooglegoogle

repeat方法接受一个数字类型的参数,可以是正式也可以是小数,如果是浮点型会自动调用Math.floor方法转为整型;

let str='google';
console.log(str.repeat(3.5)); //googlegooglegoogle
console.log(str.repeat(Math.floor(3.5)));//googlegooglegoogle

参数可以为0这样就会返回一个空字符串,但是不能为负数,否则会报错;

let str='google';
console.log(str.repeat(0)); //''
console.log(str.repeat(-3.5));//RangeError: Invalid count value

padStart,padEnd 缺啥补啥

这两个方法其实是ES7标准下扩展的方法,作用就是自动补全;

let str='goo';<br>  str.padStart(5, 'le') // 'legoo'
str.padStart(4, 'le') // 'lgoo'
str.padEnd(5, 'le') // 'goole'
str.padEnd(4, 'le') // 'gool'

这两个方法类似都是接受两个参数,第一个是补全的长度,第二个是要补充的内容,由于是es7标准的方法,现在浏览器还不能直接运行,可以尝试借助babel运行;

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

Javascript 相关文章推荐
input 和 textarea 输入框最大文字限制的jquery插件
Oct 27 Javascript
给jqGrid数据行添加修改和删除操作链接(之一)
Nov 04 Javascript
js 完美图片新闻轮转效果,腾讯大粤网首页图片轮转改造而来
Nov 21 Javascript
jQuery Ajax中的事件详细介绍
Apr 16 Javascript
JavaScript是如何实现继承的(六种方式)
Mar 31 Javascript
基于jQuery实现的打字机效果
Jan 16 Javascript
微信小程序动态添加分享数据
Jun 14 Javascript
AngularJS集合数据遍历显示的实例
Dec 27 Javascript
打通前后端构建一个Vue+Express的开发环境
Jul 17 Javascript
JavaScript this指向相关原理及实例解析
Jul 10 Javascript
vue使用过滤器格式化日期
Jan 20 Vue.js
JavaScript中10个Reduce常用场景技巧
Jun 21 Javascript
总结十个Angular.js由浅入深的面试问题
Aug 26 #Javascript
Jquery遍历select option和添加移除option的实现方法
Aug 26 #Javascript
响应式表格之固定表头的简单实现
Aug 26 #Javascript
jQuery基于BootStrap样式实现无限极地区联动
Aug 26 #Javascript
BootStrap无限级分类(无限极分类封装版)
Aug 26 #Javascript
jquery 动态合并单元格的实现方法
Aug 26 #Javascript
轻松掌握JavaScript中介者模式
Aug 26 #Javascript
You might like
PHP输出控制功能在简繁体转换中的应用
2006/10/09 PHP
php 魔术方法使用说明
2009/10/20 PHP
PHP 中关于ord($str)&amp;gt;0x80的详细说明
2012/09/23 PHP
php自动给文章加关键词链接的函数代码
2012/11/29 PHP
PHP实现通过URL提取根域名
2016/03/31 PHP
php结合md5的加密解密算法实例
2016/09/30 PHP
PHP策略模式定义与用法示例
2017/07/27 PHP
Laravel中unique和exists验证规则的优化详解
2018/01/28 PHP
使用PHP开发留言板功能
2019/11/19 PHP
使用DNode实现php和nodejs之间通信的简单实例
2015/07/06 NodeJs
jQuery实现删除li节点的方法
2016/12/06 Javascript
VUE axios发送跨域请求需要注意的问题
2017/07/06 Javascript
使用ef6创建oracle数据库的实体模型遇到的问题及解决方案
2017/11/09 Javascript
jQuery中库的引用方法
2018/01/06 jQuery
node全局变量__dirname与__filename的区别
2019/01/14 Javascript
Python多线程实例教程
2014/09/06 Python
Python栈类实例分析
2015/06/15 Python
python: line=f.readlines()消除line中\n的方法
2018/03/19 Python
解决Matplotlib图表不能在Pycharm中显示的问题
2018/05/24 Python
解决pandas使用read_csv()读取文件遇到的问题
2018/06/15 Python
Python操作配置文件ini的三种方法讲解
2019/02/22 Python
Python爬虫beautifulsoup4常用的解析方法总结
2019/02/25 Python
Python变量、数据类型、数据类型转换相关函数用法实例详解
2020/01/09 Python
基于打开pycharm有带图片md文件卡死问题的解决
2020/04/24 Python
Python实现查找数据库最接近的数据
2020/06/08 Python
Python 爬虫性能相关总结
2020/08/03 Python
HTML5中input[type='date']自定义样式与日历校验功能的实现代码
2017/07/11 HTML / CSS
HelloFresh澳大利亚:订购你的美味食品盒、健康餐食
2018/03/28 全球购物
Famous Footwear加拿大:美国多品牌运动休闲鞋店
2018/12/05 全球购物
团干部培训方案
2014/06/03 职场文书
优秀中职教师事迹材料
2014/08/26 职场文书
2014光棍节单身联谊活动策划书
2014/10/10 职场文书
2014党的群众路线教育实践活动学习心得体会
2014/10/31 职场文书
债务纠纷代理词
2015/05/25 职场文书
庆祝教师节主持词
2015/07/06 职场文书
Ruby序列化和持久化存储 Marshal和Pstore介绍
2022/04/18 Ruby