在JavaScript中,我們經常會遇到需要將JSON字符串轉換為JavaScript對象的情況。這時我們可以使用eval()函數,其可以將一個字符串作為JavaScript代碼執行。
如果我們要將一個JSON字符串轉換為JavaScript對象,我們只需使用eval(json)即可。例如,以下代碼將一個JSON字符串轉換為JavaScript對象:
var json = '{"name": "小明", "age": 18}'; var obj = eval('(' + json + ')'); console.log(obj.name); // 輸出:小明 console.log(obj.age); // 輸出:18
需要注意的是,在使用eval()函數時,JavaScript會將一個字符串作為代碼執行,如果傳入的字符串不是JSON格式,會有安全隱患。例如,以下代碼會執行一個alert彈窗:
var json = '{"name": "小明", "age": 18}'; eval('alert("hack it!");' + json);
為了避免安全隱患,我們可以使用JSON.parse()代替eval()函數進行JSON字符串轉換。以下代碼將一個JSON字符串轉換為JavaScript對象:
var json = '{"name": "小明", "age": 18}'; var obj = JSON.parse(json); console.log(obj.name); // 輸出:小明 console.log(obj.age); // 輸出:18
總之,eval()函數是將一個字符串作為JavaScript代碼執行的功能,雖然可以用于將JSON字符串轉換為JavaScript對象,但使用時需要特別注意安全問題。
上一篇build.json
下一篇30 個css 碎片拼圖