1、字符串遍历接口

字符串可以被for...of循环遍历

'use strict';
for (let codePoint of 'foo') {
//控制台输出f o o
console.log(codePoint)
}

2、include(),startsWith(),endsWith()方法

  • includes():返回布尔值,表示是否找到了参数字符串。
  • startsWith():返回布尔值,表示参数字符串是否在原字符串的头部。
  • endsWith():返回布尔值,表示参数字符串是否在原字符串的尾部。
'use strict';
let s = 'Hello world!';
// 控制台输出true
console.log(s.startsWith('Hello'))
// 控制台输出true
console.log(s.endsWith('!'))
// 控制台输出true
console.log(s.includes('o'))

这三个方法都支持第二个参数,表示开始搜索的位置。

'use strict';
let s = 'Hello world!';
// 控制台输出true
console.log(s.startsWith('world',6))
// 控制台输出true
console.log(s.endsWith('Hello',5))
// 控制台输出true
console.log(s.includes('world',6))

上面代码表示,使用第二个参数n时,endsWith的行为与其他两个方法有所不同,它针对前n个字符,而其他两个方法针对从第n个位置直到字符串结束。

3、repeat()

'use strict';
let s = 'Hello world!';
// 控制台输出Hello world!Hello world!
console.log(s.repeat(2))

4、padStart(),padEnd()

padStart()用于头部补全,padEnd()用于尾部补全。

'use strict';
// 'ababx'
console.log('x'.padStart(5, 'ab'))
// 'abax'
console.log('x'.padStart(4, 'ab'))
// 'xabab'
console.log('x'.padEnd(5, 'ab'))
// 'xaba'
console.log('x'.padEnd(4, 'ab'))

上面代码中,padStartpadEnd一共接受两个参数,第一个参数用来指定字符串的最小长度,第二个参数是用来补全的字符串。

如果原字符串的长度,等于或大于指定的最小长度,则返回原字符串。

'use strict';
// 'mfg'
console.log('mfg'.padStart(2, 'ab'))
// 'mfg'
console.log('mfg'.padEnd(2, 'ab'))

padStart的常见用途是为数值补全指定位数。下面代码生成 10 位的数值字符串。

'use strict';
// "0000000001"
console.log('1'.padStart(10, '0'))
// "0000000012"
console.log('12'.padStart(10, '0'))
// "0000123456"
console.log('123456'.padStart(10, '0'))

另一个用途是提示字符串格式。

'use strict';
// "YYYY-MM-12"
console.log('12'.padStart(10, 'YYYY-MM-DD'))
// "YYYY-09-12"
console.log('09-12'.padStart(10, 'YYYY-MM-DD') )

5、字符串模板

'use strict';
let name = "Bob", time = "today";
//嵌入变量
let s= `Hello ${name}, how are you ${time}?`;
//输出
console.log(s)

ES6 字符串扩展的更多相关文章

  1. ES6字符串扩展

    前面的话 字符串是编程中重要的数据类型,只有熟练掌握字符串操作才能更高效地开发程序.JS字符串的特性总是落后于其它语言,例如,直到 ES5 中字符串才获得了 trim() 方法.而 ES6 则继续添加 ...

  2. 【ES6 】ES6 字符串扩展及新增方法

    模板字符串 传统写法 var str = 'There are <b>' + basket.count + '</b> ' + 'items in your basket, ' ...

  3. es6字符串扩展 -- 字符串长度补全功能 padStart(), padEnd()

    ES2017 引入了字符串补全长度的功能.如果某个字符串不够指定长度,会在头部或尾部补全.padStart()用于头部补全,padEnd()用于尾部补全. 'x'.padStart(5, 'ab') ...

  4. es6字符串扩展(+模板字符串拼接)

    includes() 判断字符串中是否包含指定的字串(有的话返回true,否则返回false) console.log('hello world'.includes('world' , 7)); // ...

  5. es3中使用es6/7的字符串扩展

    最近在看阮一峰的<ES6标准入门>,在字符串扩展一节中有提到几个新的扩展,觉得挺有意思,想在ES3里面使用,于是就有下面的兼容性写法. repeat 将一个字符串重复n次 String.p ...

  6. es6 字符串的扩展和数值的扩展

    es6字符串的扩展 1. es6新增的一些方法 1.1 includes 判断是否包括在内,返回一个 true or false 1.2 statsWith 判断是否以什么开头,返回一个 true o ...

  7. ES6中字符串扩展

    ES6中字符串扩展 ① for...of 遍历字符串: 例如: for(let codePoint of 'string'){ console.log(codePoint) } 运行结果: ②  in ...

  8. ES6之字符串扩展

    ES6字符串新增的常用方法: 1. includes(): 字符串中是否包含某个字符或字符串, 包含的两个字符必须是相连的 let str = 'hello, world' str.includes( ...

  9. 【ES6基础】字符串扩展

    4.字符串扩展 (1)for...of循环遍历. let foo = [1,2,3,4,5,6] for(let i of foo){ console.log(i); } 结果: (2)include ...

随机推荐

  1. 洛谷——P1927 防护伞

    P1927 防护伞 题目描述 据说 2012 的灾难和太阳黑子的爆发有关.于是地球防卫小队决定制造一个特殊防护 伞,挡住太阳黑子爆发的区域,减少其对地球的影响.由于太阳相对于地球来说实在是太 大了,我 ...

  2. ABP+NetCore+Vue.js实现增删改查

    ABP我就不多介绍了,不知道的可以自己百度 本篇开发工具VS2017,数据库SQL SERVER2012,系统Win7 1.去ABP官网下载对应的模板,下载地址:https://aspnetboile ...

  3. java 抽象方法 能用 静态 static 修饰,或者 native 修饰 么

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha static与abstract不能同时使用 用static声明方法表明这个方法在不生成类 ...

  4. [BZOJ4025]二分图(线段树分治,并查集)

    4025: 二分图 Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 2191  Solved: 800[Submit][Status][Discuss] ...

  5. Problem B: 输入3个字符串,按由小到大顺序输出

    #include<stdio.h> #include<string.h> int main() { ],b[],c[],t[]; while(gets(a)!=NULL) { ...

  6. 广义线性模型(logistic和softmax)

    再谈广义线性模型之前,先来看一下普通线性模型: 普通线性模型的假设主要有以下几点: 1.响应变量Y和误差项ϵ正态性:响应变量Y和误差项ϵ服从正态分布,且ϵ是一个白噪声过程,因而具有零均值,同方差的特性 ...

  7. Educational Codeforces Round 8 B. New Skateboard 暴力

    B. New Skateboard 题目连接: http://www.codeforces.com/contest/628/problem/A Description Max wants to buy ...

  8. Android 权限处理

    概述: 为了保护系统的完整性和用户隐私权,Android 在访问受限的沙盒中运行每款应用. 如果应用需要使用其沙盒以外的资源或信息,则必须明确请求权限. 根据应用请求的权限类型,系统可能会自动授予权限 ...

  9. How to set window title name on Oracle EBS Form?

    --1. 置換掉原來Winodw Property上的Title String ex. SET_WINDOW_PROPERTY('XXDII_INV_MISC_TXN_V',TITLE,:misc_t ...

  10. Thunderbird for Ubuntu

    转自:http://www.cnblogs.com/slave_wc/archive/2011/05/02/2034529.html   装好ubuntu 的一般基本配置见本博客另一篇文章: Ubun ...