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 相关文章推荐
基于jquery1.4.2的仿flash超炫焦点图播放效果
Apr 20 Javascript
服务器端的JavaScript脚本 Node.js 使用入门
Mar 07 Javascript
jQuery的attr与prop使用介绍
Oct 10 Javascript
jQuery中阻止冒泡事件的方法介绍
Apr 12 Javascript
用原生JS获取CLASS对象(很简单实用)
Oct 15 Javascript
JS密码生成与强度检测完整实例(附demo源码下载)
Apr 06 Javascript
Javascript创建类和对象详解
May 31 Javascript
JavaScript函数中的this四种绑定形式
Aug 15 Javascript
vue.js 底部导航栏 一级路由显示 子路由不显示的解决方法
Mar 09 Javascript
解决vue项目中type=”file“ change事件只执行一次的问题
May 16 Javascript
Ajax请求时无法重定向的问题解决代码详解
Jun 21 Javascript
js键盘事件实现人物的行走
Jan 17 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/12/25 PHP
php高级编程-函数-郑阿奇
2011/07/04 PHP
laravel如何开启跨域功能示例详解
2017/08/31 PHP
php 使用expat方式解析xml文件操作示例
2019/11/26 PHP
JQuery 动态扩展对象之另类视角
2010/05/25 Javascript
JSON遍历方式实例总结
2015/12/07 Javascript
Node.js实现JS文件合并小工具
2016/02/02 Javascript
Bootstrap carousel轮转图的使用实例详解
2016/05/17 Javascript
jQuery Mobile动态刷新页面样式的实现方法
2016/05/28 Javascript
switch语句的妙用(必看篇)
2016/10/03 Javascript
AngularJS中$injector、$rootScope和$scope的概念和关联关系深入分析
2017/01/19 Javascript
如何获取元素的最终background-color
2017/02/06 Javascript
基于JavaScript实现本地图片预览
2017/02/08 Javascript
ES6学习之变量的解构赋值
2017/02/12 Javascript
详解Node中导入模块require和import的区别
2017/08/11 Javascript
Node.js pipe实现源码解析
2017/08/12 Javascript
利用JQuery操作iframe父页面、子页面的元素和方法汇总
2017/09/10 jQuery
详解keep-alive + vuex 让缓存的页面灵活起来
2019/04/19 Javascript
使用JavaScript计算前一天和后一天的思路详解
2019/12/20 Javascript
python进阶教程之动态类型详解
2014/08/30 Python
跟老齐学Python之字典,你还记得吗?
2014/09/20 Python
python实现微信自动回复功能
2018/04/11 Python
python爬取网页转换为PDF文件
2018/06/07 Python
浅谈numpy生成数组的零值问题
2018/11/12 Python
python使用thrift教程的方法示例
2019/03/21 Python
使用python os模块复制文件到指定文件夹的方法
2019/08/22 Python
解决Pycharm的项目目录突然消失的问题
2020/01/20 Python
python时间time模块处理大全
2020/10/25 Python
python3 使用ssh隧道连接mysql的操作
2020/12/05 Python
欧洲有机婴儿食品最大的市场:Organic Baby Food(供美国和加拿大)
2018/03/28 全球购物
售后专员岗位职责
2013/12/08 职场文书
优秀交警事迹材料
2014/01/26 职场文书
初中毕业生的自我评价
2014/03/03 职场文书
停电放假通知
2015/04/14 职场文书
四则混合运算教学反思
2016/02/23 职场文书
六年级上册《闻官军收河南河北》的教学设计
2019/11/15 职场文书