Uncaught ReferenceError: uneval is not defined
适用于Firefox,但无法与Google Chrome配合使用。
我试试:
var getSaved = [['ABC', 'http://...'], ['DEF', 'http://...'], ['...etc...']];
var get_saved_items = eval(getSaved);
var name = [], url = [];
for (var i = 0; i < get_saved_items.length; i++) {
name[i].push(get_saved_items[i][0]);
url[i].push(get_saved_items[i][1]);
};
window.localStorage.setItem('saved_name', uneval(name));
window.localStorage.setItem('saved_links', uneval(url));
它返回:Uncaught ReferenceError: uneval is not defined
有什么问题?
答案 0 :(得分:1)
我相信uneval
只是在SpiderMonkey中,所以只是基于Mozilla的浏览器。
答案 1 :(得分:0)
建议不要使用'eval',因为原因不同(你可以google)。 uneval
无法在其他浏览器中使用。
根据您的要求,您可以使用JSON解析器。广泛使用的是Crockford的JSON解析器。
https://github.com/douglascrockford/JSON-js/blob/master/json2.js
var numbers = '[1, 2, 3, 4, 5, 6]';
var names = '["abc", "def", "ghi", "jkl", "mno", "pqr"]';
// string to Javascript object
var numbersObject = JSON.parse(numbers);
var namesObject = JSON.parse(names);
console.log(numbersObject);
console.log(namesObject);
// Javascript object to string
numbers = JSON.stringify(numbersObject);
names = JSON.stringify(namesObject);
console.log(numbers);
console.log(names);