关于javascript:正经人一辈子都用不到的-JavaScript-方法总结-一

43次阅读

共计 1810 个字符,预计需要花费 5 分钟才能阅读完成。

前言

如果有这样一个需要:要求将给定的一个文件门路 D:\bianchengsanmei\blogs\categories\JavaScript 在页面展现进去。

最根本的实现办法可能是上面这个:

<body>
    <div id = "container"></div>
</body>
const filePath = "D:\bianchengsanmei\blogs\categories\JavaScript";
document.querySelector("#container").innerText = filePath;

如果真能这么简略就实现的话,那我这篇文章到这里就完结了,这是要写个寂寞吗?

完结是不可能完结的,不信,你看看输入后果:

显然,咱们很多时候会遗记有 本义符 这回事。

因为在 HTML 网页里,像 >、<、 等字符是由非凡含意的,再加上有些字符在 ASCII 字符集中没有定义,因而须要应用本义字符串来示意。

要想正确显示,应该这么写:

const filePath = "D:\\bianchengsanmei\\blogs\\categories\\JavaScript";
document.querySelector("#container").innerText = filePath;

本义符 + “\” 示意的是字符串 \。

我明天写这篇文章的意思呢,就是举荐给大家另外一种实现办法。

String.raw 简介

String.raw() 是一个模板字符串的标签函数,用来获取一个模板字符串的原始字符串的,比如说,占位符(例如 ${foo})会被解决为它所代表的其余字符串,而转义字符(例如 \n)不会。

语法

String.raw(callSite, ...substitutions)
String.raw`templateString`

参数

  • callSite 一个模板字符串的“调用点对象”。相似{raw: [‘foo’, ‘bar’, ‘baz’] }。
  • …substitutions 任意个可选的参数,示意任意个内插表达式对应的值。
  • templateString 模板字符串,可蕴含占位符(${…})。

返回值

给定模板字符串的原始字符串。

应用示例

以下是一些对于 String.raw 的应用示例:

String.raw`Hi\n${2+3}!`;
// 'Hi\\n5!',Hi 前面的字符不是换行符,\ 和 n 是两个不同的字符

String.raw `Hi\u000A!`;
// "Hi\\u000A!",同上,这里失去的会是 \、u、0、0、0、A 6 个字符,// 任何类型的本义模式都会生效,保留原样输入,不信你试试.length

let name = "Bob";
String.raw `Hi\n${name}!`;
// "Hi\\nBob!",内插表达式还能够失常运行


// 失常状况下,你兴许不须要将 String.raw() 当作函数调用。// 然而为了模仿 `t${0}e${1}s${2}t` 你能够这样做:
String.raw({raw: 'test'}, 0, 1, 2); // 't0e1s2t'
// 留神这个测试, 传入一个 string, 和一个相似数组的对象
// 上面这个函数和 `foo${2 + 3}bar${'Java' + 'Script'}baz` 是相等的.
String.raw({raw: ['foo', 'bar', 'baz']
}, 2 + 3, 'Java' + 'Script'); // 'foo5barJavaScriptbaz'

实现需求

咱们应用 String.raw 来实现以下文章结尾的需要:

const filePath = String.raw`D:\bianchengsanmei\blogs\categories\JavaScript`;
document.querySelector("#container").innerText = filePath;

正确显示:

能够看到,应用 String.raw 能够原汁原味的输入冀望后果,再也不会因为转义字符的起因导致各种预期之外的后果。

总结

咱们能够应用 String.raw 来保障模板字符的输入后果是原始值。

~

~ 本文完,感激浏览!

~

学习乏味的常识,结识乏味的敌人,塑造乏味的灵魂!

大家好,我是〖编程三昧〗的作者 隐逸王,我的公众号是『编程三昧』,欢送关注,心愿大家多多指教!

你来,怀揣冀望,我有墨香相迎!你归,无论得失,唯以余韵相赠!

常识与技能并重,内力和外功兼修,实践和实际两手都要抓、两手都要硬!

正文完
 0