ES6学习笔记之字符串的扩展
字符串的for of
ES6 为字符串添加了遍历器接口,使得字符串可以被for...of循环遍历。
const str='abcd';
for(let s of str){
console.log(s)
}
✨模板字符串
//es5
var name='小明',
age=18;
console.log('我叫'+name+'今年'+age+'岁')
//es6
console.log(`我叫${name}今年${age}岁`);
注意:模板字符串使用
``,即不是双引号"",也不是单引号''
``通常在键盘左上角ESC按键下方
新增字符串方法
String.includes(searchStr)
- 描述:判断是否含有目标字符串searchStr
{
const str='hello world';
console.log(str.includes('hello'));//true
}
String.startsWith(searchStr,position?)
- 描述:判断字符串是否以searchStr开头,第二个参数position(可选)默认为0,表示从第几个字符开始向后判断
{
const str='hello world';
console.log(str.startsWith('hello'));//true
console.log(str.startsWith('abc'));//false
console.log(str,startsWith('hello',1));//false
console.log(str,startsWith('world',6));//true
}
String.endsWith(searchStr,position?)
- 描述:判断字符串是否以searchStr结尾,同样第二个参数position(可选)默认为原字符串长度,表示从第几个字符开始向前判断
{
const str='hello world';
console.log('endsWith', str.endsWith('world'));//true
console.log('endsWith', str.endsWith('abc'));//false
console.log('endsWith', str.endsWith('world',11));//true
console.log('endsWith', str.endsWith('hello', 5));//true
console.log('endsWith', str.endsWith('hello', 7));//false }
String.repeat(n)
- 描述:repeat方法返回一个新字符串,表示将原字符串重复n次。
let str='abcd';
str=str.repeat(3);
console.log(str);//abcdabcdabcd
ES2017 引入了字符串补全长度的功能。如果某个字符串不够指定长度,会在头部或尾部补全。
1.String.padStart(length,fillStr?)头部补全
2.String.padEnd(length,fillStr?) 尾部补全
- length: 补全后的字符串长度
- fillstr: 用于填充的字符串,默认为空格
let str='5678'
console.log(str.padStart(8,'abc'));//abca5678
console.log(str.padEnd(8,'abc'));//5678abca
实例
//提示日期
let str = '08-12'
console.log(str.padStart(10, 'yyyy-MM-dd'));//yyyy-08-12
ES2019 对字符串实例新增了trimStart()和trimEnd()这两个方法。它们的行为与trim()一致,trimStart()消除字符串头部的空格,trimEnd()消除尾部的空格。它们返回的都是新字符串,不会修改原始字符串。
const s = ' abcd ';
s.trim() //"abcd"
s.trimStart() //"abc "
s.trimEnd() //" abc"
ES6学习笔记之字符串的扩展的更多相关文章
- ES6学习笔记(3)----字符串的扩展
参考书<ECMAScript 6入门>http://es6.ruanyifeng.com/ 字符串的扩展ES6之前只能识别\u0000 - \uFFFF 之间的字符,超过此范围,识别会出错 ...
- es6学习笔记--模板字符串
这几天简单看了一下深入浅出es6这本书,感觉特实用,学习了一个新特性---模板字符串在项目开发中,拼接字符串是不可缺少的,动态创建dom元素以及js操作数据都要拼接字符串,在es6出来之前,我们都通常 ...
- es6学习笔记9--函数的扩展
函数参数的默认值 基本用法 在ES6之前,不能直接为函数的参数指定默认值,为了避免这个问题,通常需要先判断一下参数y是否被赋值,如果没有,再等于默认值. ES6允许为函数的参数设置默认值,即直接写在参 ...
- ES6 学习笔记之四 对象的扩展
ES6 为对象字面量添加了几个实用的功能,虽然这几个新功能基本上都是语法糖,但确实方便. 一.属性的简洁表示法 当定义一个对象时,允许直接写入一个变量,作为对象的属性,变量名就是属性名. 例1: , ...
- ES6学习笔记(二)——字符串扩展
相信很多人也和我一样,不喜欢这样循规蹈矩的逐条去学习语法,很枯燥乏味.主要是这样学完一遍之后,没过一段时间就忘到九霄云外了.不如实际用到的时候研究它记得牢靠,所以我就整理成笔记,加深记忆的同时便于复习 ...
- ES6学习笔记(一)——扩展运算符和解构赋值
前言 随着前端工程化的快速推进,在项目中使用ES6甚至更高的ES7等最近特性早已不是什么新鲜事.之前还觉得既然浏览器支持有限,那了解一下能看懂就好,然而仅仅了解还是不够的,现在放眼望去,那些成熟框架的 ...
- ES6学习笔记(三)——数值的扩展
看到这条条目录有没有感觉很枯燥,觉得自己的工作中还用不到它所以实在没有耐心看下去,我也是最近得闲,逼自己静下心来去学习去总结,只有在别人浮躁的时候你能静下心来去学去看去总结,你才能进步.毕竟作为前端不 ...
- ES6学习笔记二:各种扩展
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/7242967.html 一:字符串扩展 1:字符串遍历器 for (let char of str) { // ...
- ES6学习笔记(8)----对象的扩展
参考书<ECMAScript 6入门>http://es6.ruanyifeng.com/ 对象的扩展 1.属性名的简洁表示法 : ES6允许在代码中直接写变量,变量名是属性名,变量值是属 ...
随机推荐
- 2018-8-10-win10-uwp-如何判断一个对象被移除
title author date CreateTime categories win10 uwp 如何判断一个对象被移除 lindexi 2018-08-10 19:16:50 +0800 2018 ...
- JS数组 一起组团(什么是数组)一个数组变量可以存放多个数据
一起组团(什么是数组) 我们知道变量用来存储数据,一个变量只能存储一个内容.假设你想存储10个人的姓名或者存储20个人的数学成绩,就需要10个或20个变量来存储,如果需要存储更多数据,那就会变的更麻烦 ...
- JavaScript特效源码(1、文字特效)
注:本文以及以下关于Javascript特效源码都是分享自JavaScript源码大全. 1.逐隐逐现的的特效 逐隐逐现的文字特效[推荐使用][适用于IE4++] (修改显示的文字后根据说明进行共2步 ...
- Android开发 BottomNavigationView学习
前言 注意这个里介绍的是AndroidX的com.google.android.material.bottomnavigation.BottomNavigationView xml布局中 <co ...
- 一.ES6的开发环境搭建
前言: 现在的Chrome浏览器已经支持ES6了,但是有些低版本的浏览器还是不支持ES6的语法,这就需要我们把ES6的语法自动的转变成ES5的语法.Webpack是有自动编译转换能力的,除了Webpa ...
- Vim操作 -- 按列
1, 拷贝行 Y y 拷贝当前光标字符 如果需要拷贝整个单词,可以用 ye,e表示跳到词尾 2, 粘贴 P(大写) 粘贴到光标前 p(小写)粘贴到光标后 3, 进入快操作模式 ctrl+q 4, 用 ...
- apache日志配置一例,包括指定存储目录与格式、自动删除过期的日志文件
有需要的朋友可以参考下(http://www.nanke0834.com) 1.vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 添加或修改为:复 ...
- BZOJ 1579 [Usaco2009 Feb]Revamping Trails 道路升级
堆优化的dijkstra. 把一个点拆成k个. 日常空间要开炸一次.. //Twenty #include<cstdio> #include<cstring> #include ...
- django中的request对象
Request 我们知道当URLconf文件匹配到用户输入的路径后,会调用对应的view函数,并将 HttpRequest对象 作为第一个参数传入该函数. 我们来看一看这个HttpRequest对 ...
- MyBatis与JPA的区别
参考博客: https://www.cnblogs.com/llywy/p/10103136.html https://www.jianshu.com/p/32ce87c163d6 MyBatis分为 ...