2015-09-25 46 views
0

我有我的元素這樣的屬性:轉換屬性值成一個對象(jQuery的或JavaScript)

data-variations="{"2005":"11.99","2006":"15.99","2007":"19.99"}" 

有沒有辦法把它轉換成一個對象,它可以看起來像:

obj = {2005:11.99, 2006:15.99, 2007:19.99} 

我試過先把這個屬性當作字符串,並用「,」分割爲進一步操作,但意識到必須有更好更乾淨的解決方案

+0

'JSON.parse(obj)'? – tymeJV

+1

'data'方法自動分析包含JSON的屬性值。你必須做的唯一事情就是迭代對象並將值轉換爲數字(或者當然,只需將它們作爲數字存儲在第一位)。 –

回答

3

這是一個JSON字符串。您可以使用JSON.parse()將其解析爲對象。

實際上,由於您使用的是jQuery,因此如果您使用.data(),它會爲您做

var obj = $(element).data('variations') 
+0

謝謝!它爲我工作!祝你有個美好的一天,祝你好運 –

+0

不客氣:-) –

-1

嘗試這種情況:

var text = "{"2005":"11.99","2006":"15.99","2007":"19.99"}"; 

OBJ = JSON.parse(文本);

$。每個(OBJ,函數(K,V){

//使用k作爲鍵和v爲值

});

相關問題