当前正学习ES6 ,遇到string.raw费心思,现将试验后的结果整理如下:

网上得来的试验:

  1. 语法

    String.raw`templateStr`;

    String.raw(obj, ...substitutions);

  2.  参数

    templateStr

    必需。模板字符串。

    obj

    必需。一个使用对象文本表示法指定的格式正确的对象,例如 { raw: “value” }。

    ...substitutions

    可选。一个数组(rest 参数),包含一个或多个替换值。

  3. 备注

    String.raw 函数旨在与模板字符串一起使用。原始字符串将包含存在于字符串中的任何转义字符和反斜杠。

    如果 obj 不是格式正确的对象,则会引发错误。

    经试验的实例如下:

1、

String.raw是处理模板字符串的一个基本方法。

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

执行原理如下:

  1. 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;}

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

2、

String.raw 函数

返回模板字符串的原始字符串形式

  1. console.log(String.raw `foo\n${ 42 }bar` === "foo\\n42bar")//true
  1.  

ES6:string.raw浅析的更多相关文章

  1. es6 String.raw()

    模板字符串可以是原始的: ES6还为原生的String对象,提供了一个raw方法. 若使用String.raw 作为模板字符串的前缀,则模板字符串可以是原始(raw)的.反斜线也不再是特殊字符,\n  ...

  2. ES6 String和Number扩展

    一.String 扩展 ①传统上,JavaScript 只有indexOf方法,可以用来确定一个字符串是否包含在另一个字符串中.ES6 又提供了三种新方法. includes():返回布尔值,表示是否 ...

  3. 包装类、数组、string类浅析及练习

    String s1 = "abc"; String s2 = "abc"; System.out.println(s1==s2); //返回true Strin ...

  4. ES6的Promise浅析

    Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大. 它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了 Promise 对象. P ...

  5. 切图崽的自我修养-[ES6] 迭代器Iterator浅析

    Iterator 这真是毅种循环 Iterator不是array,也不是set,不是map, 它不是一个实体,而是一种访问机制,是一个用来访问某个对象的接口规范,为各种不同的数据结构提供统一的访问机制 ...

  6. 前端总结·基础篇·JS(一)五大数据类型之字符串(String)

    前端总结系列 前端总结·基础篇·CSS(一)布局 前端总结·基础篇·CSS(二)视觉 前端总结·基础篇·CSS(二)补充 前端总结·基础篇·JS(一)五大数据类型之字符串(String) 目录 这是& ...

  7. 前端总结·基础篇·JS(一)原型、原型链、构造函数和字符串(String)

    前端总结系列 前端总结·基础篇·CSS(一)布局 前端总结·基础篇·CSS(二)视觉 前端总结·基础篇·CSS(三)补充 前端总结·基础篇·JS(一)原型.原型链.构造函数和字符串(String) 前 ...

  8. ES6 — 字符串String

    ES6对字符串新增了一些函数和操作规范.下面我们来看ES6中对字符串新加的特性. 1.模版字符串 (即用反引号定义的字符串) 传统的字符串拼接通过我们使用'+'号与变量连接.例如: let name= ...

  9. es6笔记1^_^let、string、number、math

    ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会,英文名称是European Computer Manufacturers Association)通过ECMA-262标准化的脚本 ...

随机推荐

  1. dd备份文件系统

    1.实现dd的备份: 使用gzip压缩: dd if=/dev/hdb | gzip > /local/path/image.gz 说明:/dev/hdb 是硬盘整盘.对不同的硬盘,可能是 /d ...

  2. 【LeetCode】063. Unique Paths II

    题目: Follow up for "Unique Paths": Now consider if some obstacles are added to the grids. H ...

  3. poj1631——树状数组求LIS

    题目:http://poj.org/problem?id=1631 求LIS即可,我使用了树状数组. 代码如下: #include<iostream> #include<cstdio ...

  4. 如何在kindle 3上无法进入 http://www.google.com/reader, 先登陆www.google.com, 然后选择阅读器。

    如何在kindle 3上无法进入 http://www.google.com/reader,  先登陆www.google.com, 然后选择阅读器.

  5. POJ1860(ford判环)

    Currency Exchange Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 24243   Accepted: 881 ...

  6. Scala学习——类,继承,接口(中)

    基本类的使用:(初) package com.dtspark.scala.basics /** * trait是一个接口 * 接口的第一次继承用extends,多继承时用with * 多继承时,如果这 ...

  7. sql web Admin 源码.net 升级

    http://www.cnblogs.com/foundation/archive/2008/10/07/1305297.html

  8. Linux命令总结_touch创建文件

    1.touch命令,用来创建文件或者修改文件时间戳 格式:touch [选项]... 文件... 选项 : -a   或--time=atime或--time=access或--time=use  只 ...

  9. C# 32位程序在64位系统下注册表操作

    在64位的Windows操作系统中,为了兼容32位程序的运行,64位的Windows操作系统采用重定向机制.目的是为了能让32位程序在64位的操作系统不仅能操作关键文件文夹和关键的注册表并且又要避免与 ...

  10. POI 中的CellType类型以及值的对应关系

    操作使用POI接口,了解CellType的类型和值的对应关系. CellType 类型 值 CELL_TYPE_NUMERIC 数值型 0 CELL_TYPE_STRING 字符串型 1 CELL_T ...