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 相关文章推荐
ie focus bug 解决方法
Sep 03 Javascript
javascript函数以及基础写法100多条实用整理
Jan 13 Javascript
jQuery实现table隔行换色和鼠标经过变色的两种方法
Jun 15 Javascript
触屏中的JavaScript事件分析
Feb 06 Javascript
基于jQuery和CSS3制作响应式水平时间轴附源码下载
Dec 20 Javascript
JS遍历页面所有对象属性及实现方法
Aug 01 Javascript
BootStrap使用file-input插件上传图片的方法
Sep 05 Javascript
jQuery 获取遍历获取table中每一个tr中的第一个td的方法
Oct 05 Javascript
使用 bootstrap modal遇到的问题小结
Nov 09 Javascript
详解html-webpack-plugin插件(用法总结)
Sep 12 Javascript
对Layer弹窗使用及返回数据接收的实例详解
Sep 26 Javascript
javascript操作向表格中动态加载数据
Aug 27 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
英雄试炼之肉山谷—引领RPG新潮流
2020/04/20 DOTA
在PHP3中实现SESSION的功能(一)
2006/10/09 PHP
ThinkPHP 防止表单重复提交的方法
2011/08/08 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十四)
2014/06/26 PHP
PHP获取毫秒级时间戳的方法
2015/04/15 PHP
PHP使用Redis长连接的方法详解
2018/02/12 PHP
jquery实现定时自动轮播特效
2015/12/10 Javascript
javascript基本算法汇总
2016/03/09 Javascript
JavaScript实现设置默认日期范围为最近40天的方法分析
2017/07/12 Javascript
实现单层json按照key字母顺序排序的示例
2017/12/06 Javascript
Vue-CLI3.x 设置反向代理的方法
2018/12/06 Javascript
javascript将16进制的字符串转换为10进制整数hex
2020/03/05 Javascript
解决vue单页面多个组件嵌套监听浏览器窗口变化问题
2020/07/30 Javascript
vue自动添加浏览器兼容前后缀操作
2020/08/13 Javascript
[04:10]DOTA2英雄梦之声_第11期_圣堂刺客
2014/06/21 DOTA
详解django.contirb.auth-认证
2018/07/16 Python
tensorflow saver 保存和恢复指定 tensor的实例讲解
2018/07/26 Python
在python中实现调用可执行文件.exe的3种方法
2019/07/07 Python
django中间键重定向实例方法
2019/11/10 Python
django实现web接口 python3模拟Post请求方式
2019/11/19 Python
pyMySQL SQL语句传参问题,单个参数或多个参数说明
2020/06/06 Python
Python爬虫如何破解JS加密的Cookie
2020/11/19 Python
加拿大租车网站:Enterprise Rent-A-Car
2018/07/26 全球购物
英国最大的在线亚洲杂货店:Red Rickshaw
2020/03/22 全球购物
判断单链表中是否存在环
2012/07/16 面试题
介绍一下XMLHttpRequest对象的常用方法和属性
2013/05/24 面试题
七一党建活动方案
2014/01/28 职场文书
大学生社团活动总结
2014/04/26 职场文书
需求分析说明书
2014/05/09 职场文书
社区先进事迹材料
2014/05/19 职场文书
高考学习决心书
2015/02/04 职场文书
校园音乐节目广播稿
2015/08/19 职场文书
医务人员岗前培训心得体会
2016/01/08 职场文书
oracle通过存储过程上传list保存功能
2021/05/12 Oracle
zabbix自定义监控nginx状态实现过程
2021/11/01 Servers
MyBatis XPathParser解析器使用范例详解
2022/07/15 Java/Android