課程
/后端開發
/PHP
/JSON應用場景與實戰
2014-11-29
源自:JSON應用場景與實戰 2-1
正在回答
還有(“+res+”)是什么意思?我知道這個是什么意思了?res是傳過來的json對象。
還有(“+res+”)是什么意思?
原因在于:eval 本身的問題。 由于 json 是以”{}”的方式來開始以及結束的,在 JS 中,它會被當成一個語句塊來處理,所以必須強制性的將它轉換成一種表達式。加上圓括號的目的是迫使 eval 函數在處理 JavaScript 代碼的時候強制將括號內的表達式(expression)轉化為對象,而不是作為語句(statement)來執行。舉一個例子,例如對象字面量 {},如若不加外層的括號,那么 eval 會將大括號識別為 JavaScript 代碼塊的開始和結束標記,那么{} 將會被認為是執行了一句空語句。所以下面兩個執行結果是不同的:alert(eval("{}"); // return undefinedalert(eval("({})");// return object[Object]?
eval()可使用 JSON.parse()來取代
將JavaScript對象表示法的JSON字符串轉換為對象(字符串轉對象)
所以他才能夠jsonObj.username
舉報
你還不知道JSON嗎,快快加入我們吧,通過學習加深對Json的理解
5 回答
1 回答
4 回答
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2015-05-18
還有(“+res+”)是什么意思?我知道這個是什么意思了?res是傳過來的json對象。
2015-05-18
還有(“+res+”)是什么意思?
2015-02-27
原因在于:eval 本身的問題。 由于 json 是以”{}”的方式來開始以及結束的,在 JS 中,它會被當成一個語句塊來處理,所以必須強制性的將它轉換成一種表達式。
加上圓括號的目的是迫使 eval 函數在處理 JavaScript 代碼的時候強制將括號內的表達式(expression)轉化為對象,而不是作為語句(statement)來執行。舉一個例子,例如對象字面量 {},如若不加外層的括號,那么 eval 會將大括號識別為 JavaScript 代碼塊的開始和結束標記,那么{} 將會被認為是執行了一句空語句。所以下面兩個執行結果是不同的:
alert(eval("{}"); // return undefined
alert(eval("({})");// return object[Object]?
2015-01-26
eval()可使用 JSON.parse()來取代
將JavaScript對象表示法的JSON字符串轉換為對象(字符串轉對象)
所以他才能夠jsonObj.username