[英]Template Literals for Javascript Arrays
當我嘗試將數組放入 JavaScript 數組時
> `${[1,2,3]}`
我拿回來這個
'1,2,3'
並不是
'[1,2,3]'
在最新的 Node 和 Chrome 中。
我遺漏了一些非常明顯的東西,但仍然需要向我說明:)
你應該使用JSON.stringify(array)
它可以幫助你預測這個數組中任何數組到字符串的轉換。
const array = [["expected","test",1],0];
const arrayStr = JSON.stringify(array);
const templateResAsString = `${array}`; // expected,test,1,0
const templateResAsarray = `${arrayStr}`; // [["expected","test",1],0]
默認情況下,插入到模板文字中的值將轉換為其字符串表示形式。
對於對象,這意味着調用它們的.toString()
方法。 數組的字符串表示只是其元素的字符串表示的逗號分隔列表,沒有前導[
或尾隨]
:
console.log( [1,2,3].toString() );
包含上述答案的合並列表:
const arr = [1,2,3,4,5,'foo','bar','baz'] console.log(JSON.stringify(arr)); console.log(JSON.stringify(arr, null, 2)); console.log(arr.toString()); console.log(`${arr}`); console.log(arr.join('\\n'));
祝你好運...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.