es6学习过程(三)
来源:互联网 发布:扫描ssh端口 弱口令 编辑:程序博客网 时间:2024/06/06 18:35
字符串的扩展
1.模板字符串
模板字符串是字符串的一个新特性,以前我们要实现字符串的拼接的时候是这样的:
let name = '小白';let str = 'my name is ' + name;
而es6的模板字符串出来以后我们可以写成这样:
let name = '小白';let str = `my name is ${name}`; //这个符号是tab上面,数字1左边的键
那么,这样写有什么好处呢?好处就是当很多个变量拼接在一起的时候,避免出现很多个加号和冒号。
需要注意几个重点:
1.可以定义多个字符串
let todo = `今年星期天,我要去游泳!`
在这里直接换行即可,但是需要注意的是,所有的空格和缩进都会被保留在输入中。代码换行了,实际展示的时候也会换行。
2.${}中可以放任意的js表达式,
${}可以是运算表达式和对象的属性
let a = 10;let b = 20;let obj = { a = 15; b = 20;}let sum = `结果等于${a+b}`;let sum = `结果等于${obj.a+obj.b}`;
${}中也可以是函数的调用
function sum(){ let a = 10; let b = 20; return a + b;}let result = `相加的结果为${sum()}`;
标签模板
let name = 'xiaobao'; tagFn`my name is${name}!`; function tagFn(arr,v1) { console.log(arr); //['my name is','!'] console.log(v1); //xiaobao }
第一个参数arr是除了${}以外的其他字符,按照顺序组成了数组的内容。所以arr的值为[‘my name is’,’!’]。 标签模板是es6的新语法。它常用来过滤用户的非法输入和多语言转换。
repeat函数
repeat函数:就是将目标字符串重复n次,返回一个新的字符串,并且不会对目标字符串造成影响。
let str = '你猜!';let str1 = str.repeat(3); //你猜!你猜!你猜!
includes函数
includes函数:判断字符串是否含有指定字符串。返回true表示含有,返回false表示未含有;第二个参数选填,表示开始搜索的位置。
let name = '小白';console.log(name.includes('小')); //true
以前一般类似的查找我们都是使用indexof的方法,若是找的到的话就返回所在的位置,若是找不到话就会返回-1。 其实很多时候我们使用起来并不是很方便,有时候还要多加一层判断才行。但是我们现在有了includes它的返回值更加的直观,况且有的时候我们并不关心字符串出现的位置。
startsWith函数
startsWith函数:判断字符串是否出现在目标字符的开始位置。第二个参数表示开始搜索的位置。不在的话返回false
let name = '小白';console.log(name.startsWith('小')); //true
endsWith函数
endsWith函数:判断子字符串是否出现在目标字符串的尾部位置,第二个参数是选填,表示针对前n个字符。
let name = '小白';console.log(name.endsWith('白')); //true
codePointAt函数
let str = '吉';console.log(str.codePointAt()); //134071
String.fromCodePoint函数
console.log(String.fromCodePoint(137071)); //吉
String.raw函数
String.raw函数:返回字符串最原始的面貌。
//没有处理过的log(`name\nlichao`);//name//lichao//处理过的let n = String.raw`name\nlichao`;log(n); //name\nlichao
- es6学习过程(三)
- es6学习过程(一)
- es6学习过程(二)
- ES6学习笔记(三)
- ES6学习笔记(三)--字符串扩展
- ES6学习笔记(三)
- 《ES6深入浅出》学习笔记(三)
- ES6个人学习整理(三)——解构赋值
- ES6学习笔记(三)字符串的扩展
- ES6学习(一)
- es6字符串扩展(三)
- 每天一点ES6(三)
- EL学习过程(三)
- ES6学习之路(三) 字符串扩展
- React与ES6(三)ES6类和方法绑定
- ES6学习笔记(一)
- ES6学习笔记(二)
- ES6学习6(Symbol)
- 竟然分不清API和SRC
- 队列的使用,包括清空等
- 性能问题
- 王爽汇编第三版 实验七
- 消息中间件-Kafka
- es6学习过程(三)
- CentOs 7虚拟机 安装并启动Redis服务,做个记录
- 【汽车口碑分析】2.Ubuntu 16.04下MongoDB安装、设置与使用
- Http请求和HttpServletRequest中获得对应参数
- vue.js 入坑之路(二)
- 用construct2制作第二个游戏
- 软考学习总结
- 提权的魅力——redis未授权漏洞
- 综合练习——双色球