javascript中eval函數(shù)用于計(jì)算某個(gè)字符串,并執(zhí)行其中的的JavaScript代碼,該函數(shù)的使用語法是“eval(string)”,參數(shù)string表示要計(jì)算的字符串。
本文操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版,DELL G3電腦。
javascript中eval的用法
eval() 函數(shù)可計(jì)算某個(gè)字符串,并執(zhí)行其中的的 JavaScript 代碼。
語法
eval(string)
參數(shù)string 必需:要計(jì)算的字符串,其中含有要計(jì)算的 JavaScript 表達(dá)式或要執(zhí)行的語句。
返回值:通過計(jì)算 string 得到的值(如果有的話)。
說明
該方法只接受原始字符串作為參數(shù),如果 string 參數(shù)不是原始字符串,那么該方法將不作任何改變地返回。因此請(qǐng)不要為 eval() 函數(shù)傳遞 String 對(duì)象來作為參數(shù)。
如果試圖覆蓋 eval 屬性或把 eval() 方法賦予另一個(gè)屬性,并通過該屬性調(diào)用它,則 ECMAScript 實(shí)現(xiàn)允許拋出一個(gè) EvalError 異常。
拋出
如果參數(shù)中沒有合法的表達(dá)式和語句,則拋出 SyntaxError 異常。
如果非法調(diào)用 eval(),則拋出 EvalError 異常。
如果傳遞給 eval() 的 Javascript 代碼生成了一個(gè)異常,eval() 將把該異常傳遞給調(diào)用者。
提示:雖然 eval() 的功能非常強(qiáng)大,但在實(shí)際使用中用到它的情況并不多。
實(shí)例
在本例中,我們將在幾個(gè)字符串上運(yùn)用 eval(),并看看返回的結(jié)果:
<script type="text/javascript"> eval("x=10;y=20;document.write(x*y)") document.write(eval("2+2")) var x=10 document.write(eval(x+17)) </script>
輸出:
200 4 27
推薦學(xué)習(xí):《javascript基礎(chǔ)教程》