JavaScript eval() 函數

JavaScript eval 函數是個功能非常強大的函數,eval 函數可以執行某一段字串(String)的運算,如果該字串是運算式,則 eval 會計算出運算結果,如果只是單純數個字串的連接,eval 會自動返回組和好的整個字串,雖然說 JavaScript eval 函式的功能非常強大,但似乎平時用到深入的強大功能機會並不多。

JavaScript eval 函數基本語法
eval( 要執行的字串 )
請將"要執行的字串放在"eval 函式內,可以是組合字串、數學運算式、單純字串等,若沒有填值,則 eval 返回 undefined。

JavaScript eval 函數範例
<script type="text/JavaScript"><!--
 var a=2,b=4,c=6;
 var B = eval('A'+a+'=b*c');
 
 document.write(B+'<br>'); // 輸出 24
 document.write(A2); // 輸出 24
--></script>

範例中我們先宣告了三個 JavaScript 變數,分別是 a、b、c,均是正整數類型的變數,接著在宣告一個變數 B 是要用 eval 來計算字串,然後我們透過 document.write 將參數列印在螢幕上,結果會輸出什麼呢?答案是兩個 24。先來看看 eval 函式中的字串,代表的意思可以看成《A2=24》這樣的結果,所以在第一次輸出變數 B 的結果就是 24,第二次輸出的 A2 則也在 eval 函式中或得了 24 的整數值,所以無論輸出 B 或是 A2 的結果都是一樣的。

在 eval 中跑 while 迴圈
eval("var i=0;while (i<10){document.write(i);i++;}");
以上輸出結果為 0123456789。由於 eval 函式強大的運算功能,讓我們可以很容易的在系統中調用來處理一些計算。

推薦給您的相關主題
© Copyright wibibi.com 網頁設計教學百科 基礎的網頁設計規劃、資料庫與程式設計 Since 2012