我有问题。 我开发了一个将json文件转换为表格的Web应用程序。 问题出现时,而不是json我有这样的文件:
i18n.map("it", {
errors: {
"cannot.fetch.credit":"Ops... non riesco a leggere il credito.",
"not.enough.credit.to.buy":"Non hai abbastanza credito per comprare questo biglietto."
},
status: {
title: "Il tuo stato",
scanqrbus: "Inquadra il QR code all'interno del bus",
tickets: {
title: "Biglietto"
}
},
offline: {
connectionless: "Connessione assente",
reconnect: "Riconnetti",
nostart: "Puoi prenotare biglietti solo quando la connessione è attiva",
nosignup: "Connessione assente"
}});
有一种方法可以使用javascript在这样的json中转换该文件类型吗?
{
"errors": {
"cannot.fetch.credit":"Ops... non riesco a leggere il credito.",
"not.enough.credit.to.buy":"Non hai abbastanza credito per comprare questo biglietto."
},
"status": {
"title": "Il tuo stato",
"scanqrbus": "Inquadra il QR code all'interno del bus",
"tickets": {
"title": "Biglietto"
}
},
"offline": {
"connectionless": "Connessione assente",
"reconnect": "Riconnetti",
"nostart": "Puoi prenotare biglietti solo quando la connessione è attiva",
"nosignup": "Connessione assente"
}
}
答案 0 :(得分:0)
如果您能够将i18n.map文件加载到字符串中,则可以使用以下函数。
使用此功能时应该非常小心。它使用eval
并将执行作为参数传递给它的任何代码。
function i18nToJSON (i18nstring) {
var i18n = {};
i18n.map = function (lang, obj) {
return JSON.stringify(obj);
};
return eval(i18nstring);
}
使用示例:
var x = 'i18n.map("it", {a: "123", b: "456"});';
var JSONstring = i18nToJSON(x);
console.log (JSONstring); // {"a":"123","b":"456"}