如何使用JavaScript(或jQuery)转换使用data()保存的字符串表单对象?
例如:转换它:
Object {imageNum: 0, text: "'sth1','sth2','sth3'"}
进入这个:
Object {imageNum: 0, text: ['sth1','sth2','sth3']}
或者只是删除引号,以便在调用$(“#data-store”)时.data()[“text”]我将得到['sth1','sth2','sth3']或'sth1' , 'STH2', 'sth3'
我要做的是加载存储在#data-store中的字体,但要为google设置字体,我需要这样的格式:
WebFontConfig = {
google: { families: [ 'Aclonica', 'Acme', 'Alegreya' ]
}
};
这是我的小车JS:
$(document).on('click', '.fonts-container ul li', function(){
var $el = $(this);
var fontName = $el.data('fontname');
$(this).closest(".editor").find('.text2').css('font-family', fontName);
parent.$("#data-store").data()["text"] = $(this).css('font-family');
var dataobject = $("#data-store").data();
dataobject.text = dataobject.text.split(",");
WebFontConfig = {
google: { families: [dataobject.text ]
}
}
fontLoad();
});
答案 0 :(得分:3)
尝试
var text= $("#data-store").data('text'); //{imageNum: 0, text: "'sth1','sth2','sth3'"};
text = text.replace(/'/g, "").split(/,/)
答案 1 :(得分:0)
您可以使用javascript split方法将文本(字符串)转换为数组。
所以,
var myobj = {imageNum: 0, text: "'sth1','sth2','sth3'"};
myobj.text = myobj.text.split(",");