![](/img/trans.png)
[英]What is the difference between a dollar sign and a dollar sign followed by a period in JQuery?
[英]Dollar sign followed by a square bracket in a template string
我正在搞亂一些ES6代碼並遇到了這個問題
let vendors = ['ms', 'moz', 'webkit', 'o'];
let root = window || global;
let performance = window.performance || {};
if (!performance.now) {
vendors.some(function(vendor) {
performance.now = performance[`$[vendor}Now`];
...
我可以猜到下面的代碼片段是做什么的,但它是什么類型的庫/語法? 這不是我以前見過的東西,它不是純粹的ES6,對吧?
`$[vendor}Now`
看來這是一個語法錯誤。 應該是正確的:
`${vendor}Now`
這是美元表達,如下所述: https : //developer.mozilla.org/en/docs/Web/JavaScript/Reference/template_strings
模板字符串由反向標記(
`
)(重音符號)字符括起,而不是雙引號或單引號。 模板字符串可以包含占位符。 這些由美元符號和花括號($ {expression})表示。
模板字符串中的方括號是錯誤的。
更具體地說,如果你有:
var expression = 'test';
console.log(`string text ${expression} string text`); //Correct syntax
上面的代碼將導出:“字符串文本測試字符串文本”
但下面的代碼有一個開口方括號和一個關閉花括號
var expression = 'test';
console.log(`string text $[expression} string text`); //Wrong syntax
將只導出:“字符串文本$ [表達式}字符串文本”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.