簡體   English   中英

Javascript,數組轉換為字符串格式

[英]Javascript, Array to string format

我在Ionic項目中處於一種將數組轉換為字符串格式(數組)的情況。 這是例子

var fruits = ["Banana", "Orange", "Apple", "Mango"];

應該轉換為

var strFruits = "['Banana', 'Orange', 'Apple', 'Mango']";

我可以使用循環和字符串操作來做到這一點,但是應該有一種簡單的方法來解決這個問題。

嘗試:

 const fruits = ['Banana', 'Apple', 'Orange']; const format = "['" + fruits.join("', '") + "']"; console.log(format); // => ['Banana', 'Apple', 'Orange'] 

或者按照注釋中的建議,使用JSON.stringify

 const fruits = ['Banana', 'Apple', 'Orange']; const format = JSON.stringify(fruits); console.log(format); // => ["Banana", "Apple", "Orange"] 

我個人不喜歡最后一個,因為您被迫使用雙引號,而唯一的更改方法是使用RegEx。

您可以使用JSON.stringify(fruits)或只是concat "["+fruits.toString()+"]"

對於

const fruits = ["Banana", "Orange", "Apple", "Mango"];

您可以這樣做:

console.log(JSON.stringify(fruits));
// ["Banana","Orange","Apple","Mango"]

這將返回一個可以使用JSON.parse()解析為JS的字符串,這似乎正是您所需要的

對於您的問題范圍,這也是有效的:

console.log(`['${fruits.join("', '")}']`);
// ['Banana', 'Orange', 'Apple', 'Mango']

這將返回您用單引號引起來的內容,但是使用JSON.stringify()有一個額外的優勢,就是始終可以解析返回的字符串(我並不總是有效的JSON)

JSON.parse(`['${fruits.join("', '")}']`);
// Uncaught SyntaxError: Unexpected token ' in JSON at position 1

 console.log(JSON.stringify(["Banana", "Orange", "Apple", "Mango"]).replace(/"/g, "'")) 

但是我認為方法“ join()”的第一個變體更適合這種情況,因為如果文本包含雙引號,則replace()會以錯誤的方式工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM