es6格式化字符串(ES6-字符串方法及其实现)
本文目录
ES6-字符串方法及其实现
模板字符串替换 + 操作符,来拼接字符串,并且支持换行:
标签模板 :
标签模板其实不是模板,而是函数调用的一种特殊形式。“标签”指的就是函数,紧跟在后面的模板字符串就是它的参数。
如果模板字符里面有变量,就不是简单的调用了,而是会将模板字符串先处理成多个参数,再调用函数。
String.raw() 是一个 模板字符串 的标签函数,它的作用类似于 Python 中的字符串前缀 r ,通常使用标签模板的形式( String.raw模板字符串 ),返回值是 自动转义 的字符串:
Polyfill:
repeat 方法返回一个新字符串,表示将原字符串重复 n 次。语法:
如果某个字符串不够指定长度,会在头部或尾部补全。 padStart() 用于头部补全, padEnd() 用于尾部补全。
trimLeft() 是 trimStart() 的别名, trimRight() 是 trimEnd() 的别名。
除了空格键,对字符串头部(或尾部)的 tab 键、换行符等不可见的空白符号也有效。
substring() 方法返回一个字符串在开始索引到结束索引之间的一个子集, 或从开始索引直到字符串的末尾的一个子集。返回新的字符串,不改变原来的字符串
str.substring(indexStart可选 ,一个 0 到字符串长度 之间的整数,以该数字为索引的字符 不包含 在截取的字符串内。 左闭右开
slice() 方法提取某个字符串的一部分,并返回一个新的字符串,且不会改动原字符串。
str.slice(beginIndex) 参数和substring一样,只不过有差异。和上面方式对比:
可见 slice 方式的索引是可以倒数的, 强烈推荐 使用 slice 方式截取字符串更好理解,不易出错。
其实JS中截取字符串,方法有很多: substr(淘汰,不推荐) 、 substring 、 slice ,推荐使用 slice 方式。
ES6模板字符串花样使用(循环,判断)
注意:主要是map的使用,需要用map,将值return出去,如果使用foreach则不报错一直返回undefined
注意:不要直接循环最外层div,只能有一个根节点,循环拼接即可
vue的es6模板字符串使用data数据/uniapp``使用的data数据
本人uniapp的 《rich-text》 使用了模板字符串但是需要读取data的数据 有的时候想使用字符串直接读取映射到界面但是data数据无法使用,可以参考
简述ES6的数据类型
接下来扯一下ES6的数据类型,ES6新引入了一种Symbol的原始数据类型来表示独一无二的值。它和undefined、null、Boolean、String、Number、Object组成ES6的数据类型。 Symbol值由Symbol()函数生成,这代表对象的key值可以有两种类型,一种是string,一种是symbol,并且Symbol类型的值独一无二,不会和其他值产生冲突。Symbol函数前不能使用new命令,因为它是属于原始数据。Symbol() 函数中可以添加参数,来做描述(其实就是个标示);可以通过toSting转换成字符串(貌似什么东西都可以或多或少的toString或者valueOf转换成字符串);Symbol值不等即使同参数也不等且不能进行计算,但是倒是可以转化为boolean值。 Symbol值作为属性,不能被以json.xx引出,只能以json,因为.后都是跟着字符串,而symbol是一种与字符串完全不同的数据类型。Symbol作为属性时,无法被常规的方法遍历出来,只能通过getOwnPropertySymbols方法查出来。 接下来呢,说一些set,一种类数组的数据结构,和map,一种类对象的结构。 set,一种类数组的数据结构,但是其中没有重复的值,利用这点呢,可以搞个数组去重,具体怎么搞,自己去探索去。set结构可以利用new set(arr)生成,也可以利用add添加,利用add添加的时候不会对添加的数据类型做出改变。重点:set中的不包含重复值呢,是类型 || 值均不等,除了NaN剩下的值只要是有类型或者值不同的都算是非重复值,这个跟等同运算度(采用严格的同一性定义检测两个运算数是否完全等同)相似。set的长度为size不是length,方法是add(添加),delete(删除),has(是否存在),clear(清空)。具体关于它的数据遍历什么跟ES6中的数组遍历方法差不多。 map,一种类对象的数据结构,但是它的key值可以是任何数据类型,不局限与字符串。map可以采用new map()生成,也可以用set向其中添加,而且同样的值定义的两个变量可以作为两个key值。map中的属性方法大致和set同,只不过多了个get(key)获取对应value值,如果key不存在返回undefined。 今天写的就这些吧,多的想不起来啦,以后想起来再补吧。
更多文章:
富士通打印机(fujitsudpk750打印机联机灯一直闪怎么回事)
2024年3月21日 08:00
sd卡格式化后还能恢复吗(相机储存卡格式化后里面的照片还能恢复吗)
2024年7月3日 07:21
北斗融媒app下载(昨天中午在美团优选买的东西 显示待取货和商品运输中 这是到了吗)
2024年5月6日 03:39
cad2019永久激活码(中望CAD2019激活码谁有吗,哪位大佬提供一下)
2024年8月4日 18:35