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 相关文章推荐
jquery 页面滚动到底部自动加载插件集合
Jan 31 Javascript
整理Javascript数组学习笔记
Nov 29 Javascript
BootStrap Tooltip插件源码解析
Dec 27 Javascript
vuejs父子组件通信的问题
Jan 11 Javascript
vue.js的提示组件
Mar 02 Javascript
ES6生成器用法实例分析
Apr 10 Javascript
BootStrap Table实现server分页序号连续显示功能(当前页从上一页的结束序号开始)
Sep 12 Javascript
详解angularJS+Ionic移动端图片上传的解决办法
Sep 13 Javascript
AngularJS标签页tab选项卡切换功能经典实例详解
May 16 Javascript
详解Vue组件之作用域插槽
Nov 22 Javascript
JS栈stack类的实现与使用方法示例
Jan 31 Javascript
JS实现从对象获取对象中单个键值的方法示例
Jun 05 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
十大催泪虐心动漫,你能坚持看到第几部?
2020/03/04 日漫
一个高ai的分页函数和一个url函数
2006/10/09 PHP
PHP输入流php://input实例讲解
2015/12/22 PHP
php 判断字符串编码是utf-8 或gb2312实例
2016/11/01 PHP
php-app开发接口加密详解
2018/04/18 PHP
PHP实现15位身份证号转18位的方法分析
2019/10/16 PHP
浅析PHP中json_encode与json_decode的区别
2020/07/15 PHP
在js中使用&quot;with&quot;语句中跨frame的变量引用问题
2007/03/08 Javascript
asp 取文本框名称代码
2008/12/02 Javascript
js 页面传参数时 参数值含特殊字符的问题
2009/12/13 Javascript
JavaScript 判断日期格式是否正确的实现代码
2011/07/04 Javascript
javascript当中的代码嗅探扩展原生对象和原型(prototype)
2013/01/11 Javascript
jquery的map与get方法详解
2013/11/04 Javascript
Javascript 读取操作Sql中的Xml字段
2014/10/09 Javascript
JavaScript数据结构与算法之栈与队列
2016/01/29 Javascript
移动端点击态处理的三种实现方式
2017/01/12 Javascript
JS实现匀速与减速缓慢运动的动画效果封装示例
2018/08/27 Javascript
3分钟了解vue数据劫持的原理实现
2019/05/01 Javascript
Webpack3+React16代码分割的实现
2021/03/03 Javascript
Python THREADING模块中的JOIN()方法深入理解
2015/02/18 Python
总结Python中逻辑运算符的使用
2015/05/13 Python
对python中return和print的一些理解
2017/08/18 Python
Python自定义线程池实现方法分析
2018/02/07 Python
详解Python3 中的字符串格式化语法
2020/01/15 Python
用python查找统一局域网下ip对应的mac地址
2021/01/13 Python
西安当代医院管理研究院笔试题
2015/12/11 面试题
后勤工作职责
2013/12/22 职场文书
学生会主席事迹材料
2014/01/28 职场文书
2014年最新学习全国两会精神心得
2014/03/17 职场文书
环保志愿者活动方案
2014/08/14 职场文书
大学生翘课检讨书范文
2014/10/06 职场文书
2014年乡镇纪委工作总结
2014/12/19 职场文书
晚会开幕词
2015/01/28 职场文书
综合素质自我评价评语
2015/03/06 职场文书
教师节表彰会主持词
2015/07/06 职场文书
使用vue-element-admin框架从后端动态获取菜单功能的实现
2021/04/29 Vue.js