[英]Create a Javascript array from an array formatted string
我從CMS獲取一個字符串(具有數組標記),但是javascript無法將其識別為數組
// Example of how data comes from CMS
var data = [ ["<div class='example'><h2>University</h2><hr><p>Lorem Ipsum</p></div>", 13.3851, -2.2568, "/example.png"],
["<div class='example2'><h2>University Two</h2><hr><p>Lorem Ipsum Example</p></div>", -3.3851, -22.2568, "/examplenow.png"], ] ;
// where I need data as array
googlelocations = data;
當我記錄數據時,我得到:
0: "[\"<div class='example'><h2>University</h2><hr><p>Lorem Ipsum</p></div>\", -3.3851, -22.2568, \"/example.png\"],\r\n[\"<div class='example2'><h2>University Two</h2><hr><p>Lorem Ipsum Example</p></div>\", -3.3851, -22.2568, \"/examplenow.png\"],"
長度:1如何獲取var數據作為上述信息的數組?
假設你正在
["<div class='example'><h2>University</h2><hr><p>Lorem Ipsum</p></div>", 13.3851, -2.2568, "/example.png"],
["<div class='example2'><h2>University Two</h2><hr><p>Lorem Ipsum Example</p></div>", -3.3851, -22.2568, "/examplenow.png"],
來自CMS的@DATA。
您需要將這些數組包裝到數組數組中,以便將它們正確分配到data
變量中。
var data = [ @DATA ];
要解析似乎是一個數組的響應,可以使用JSON.parse()
,在這種情況下,您需要構建一個有效的數組或js對象。 在這種情況下,添加[
]
可以解決問題,但這取決於響應的准確程度。
var data = "[\\"<div class='example'><h2>University</h2><hr><p>Lorem Ipsum</p></div>\\", -3.3851, -22.2568, \\"/example.png\\"],\\r\\n[\\"<div class='example2'><h2>University Two</h2><hr><p>Lorem Ipsum Example</p></div>\\", -3.3851, -22.2568, \\"/examplenow.png\\"]" data = JSON.parse("["+data+"]") console.log(data)
如果只需要這些值,則可以執行以下操作:
var data = "[\\"<div class='example'><h2>University</h2><hr><p>Lorem Ipsum</p></div>\\", -3.3851, -22.2568, \\"/example.png\\"],\\r\\n[\\"<div class='example2'><h2>University Two</h2><hr><p>Lorem Ipsum Example</p></div>\\", -3.3851, -22.2568, \\"/examplenow.png\\"]" data = data.split(",") var latLong = [data[1],data[2],data[5],data[6]] console.log(latLong)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.