ES6中的String.raw

String.raw是处理模板字符串的一个基本方法。举个例子吧:

String.raw({raw: ‘test‘}, 1,2,3,4);    //t1e2s3t
等同于
String.raw({raw: [‘t‘,‘e‘,‘s‘,‘t‘]}, 1,2,3,4)

执行原理如下:

String.raw = function (strings, ...values) {
  var output = "";
  for (var index = 0; index < strings.length; index++) {
    output += strings.raw[index] + values[index];
  }

  output += strings.raw[index]
  return output;
}

可以用在字符串或数组的插入组成新字符串。

时间: 2024-11-08 05:30:40

ES6中的String.raw的相关文章

ES6, Angular,React和ABAP中的String Template(字符串模板)

String Template(字符串模板)在很多编程语言和框架中都支持,是一个很有用的特性.本文将Jerry工作中使用到的String Template的特性做一个总结. ES6 阮一峰老师有一个专门的网站介绍ES6入门,还出了一本书: <ECMAScript6标准入门>. http://es6.ruanyifeng.com/ 我们来看看ES6里的String Template. 首先看下面这段代码. <html> <div id="JerryTest"

javascript中String.startswith和String.endsWidth 与 es6中的 startswith 和 endsWidth

在javascript中使用String.startswith和String.endsWidth 一.String.startswith 和 String.endsWidth 功能介绍 String.startswith:接受一个参数,参数是要检索的字符串.判断当前字符串是否以另一个字符串作为开头. String.endsWidth:接受一个参数,参数是要检索的字符串.判断当前字符串是否以另一个字符串结尾. 例如: 1 var result = "abcd".startsWith(&q

ES6 中字符串的扩展

1. 字符的Unicode表示法 JavaScript允许采用 \uxxxx 形式表示一个字符,其中 xxxx 表示字符的 Unicode 码点. "\u0061" // 表示小写字母"a" 但是这种表示法只限于码点在 \u0000-\uFFFF 之间的字符,有些字符的 Unicode 编码超出了这个范围,那么就必须使用2个双字节的形式表示. "\uD842\uDFB7" // "??" 注意不是吉祥的"吉"

ES6中字符串的新增方法梳理

1.String.fromCodePoint(); String,fromCodePoint()方法可以认为是对String.fromCharCode()方法的扩展,这两个方法的共同点在于都是用于Unicode码点返回对应字符,但是差异在于String.fromCharCode()该方法不能识别大于0xFFFF的码点,ES6中提供了String.fromCodePoint()就很好的弥补了String.fromCharCode()的不足.它可以识别码点大于0xFFFF的对应字符. 上面是在chr

ES6中Arguments和Parameters用法解析

原文链接 译文 ECMAScript 6 (也称 ECMAScript 2015) 是ECMAScript 标准的最新版本,显著地完善了JS中参数的处理方式.除了其它新特性外,我们还可以使用rest参数.默认值.解构赋值等. 本教程中,我们将详细探索arguments和parameters,看看ES6是如果改善升级它们的. 对比 Arguments 和 Parameters 通常情况下提到 Arguments 和 Parameters, 都认为是可以互换使用的.然而,基于本教程的目的,我们做了明

ES6中的Symbol类型

前面的话 ES5中包含5种原始类型:字符串.数字.布尔值.null和undefined.ES6引入了第6种原始类型--Symbol ES5的对象属性名都是字符串,很容易造成属性名冲突.比如,使用了一个他人提供的对象,想为这个对象添加新的方法,新方法的名字就有可能与现有方法产生冲突.如果有一种机制,保证每个属性的名字都是独一无二的,这样就从根本上防止了属性名冲突.这就是ES6引入Symbol的原因,本文将详细介绍ES6中的Symbol类型 创建 Symbol 值通过Symbol函数生成.这就是说,

ES6中比较实用的几个特性

1.Default Parameters(默认参数) in ES6 es6之前,定义默认参数的方法是在一个方法内部定义 1 var link = function (height, color, url) { 2 var height = height || 50; 3 var color = color || 'red'; 4 var url = url || 'http://azat.co'; 5 ... 6 } es6写法,简单粗暴了很多了 var link = function(heig

ES6中新增的字符串方法

String.fromCodePoint() 用于从 Unicode 码点返回对应字符 String.fromCodePoint(0x20BB7) // "??" String.fromCodePoint(0x78, 0x1f680, 0x79) === 'x\uD83D\uDE80y' // true 上面代码中,如果String.fromCodePoint方法有多个参数,则它们会被合并成一个字符串返回. String.raw() 该方法返回一个斜杠都被转义(即斜杠前面再加一个斜杠)

理解ES6中的Symbol

一.为什么ES6引入Symbol 有时候我们在项目开发的过程中可能会遇到这样的问题,我写了一个对象,而另外的同时则在这个对象里面添加了一个属性或是方法,倘若添加的这个属性或是方法是原本的对象中本来就有的,那么这个时候势必会造成冲突,那么为了防止这种冲突,ES6 就引入了Symbol 二.Symbol使用方法 Symbol是一个新的数据类型,所以不要因为Symbol的使用方法的特殊而认为它只是es6中的新的方法.它所代表的是独一无二的,即便其参数一致. 1.使用方法 Symbol的使用方法是Sym