本文實例講述了JS使用eval()動態創建變量的方法。分享給大家供大家參考,具體如下:
一、什麼是eval()函數?
eval_r()函數可計算某個字符串,並執行其中的的 JavaScript 代碼。
二、如何動態定義變量?
既然eval()能夠計算字符串,何不將定義變量的寫法轉換為字符串,然後放入eval_r()函數內進行執行,形如:
var defineStr = "var number_"+i.toString(); eval_r(defineStr);
這樣就定義了一個變量,你可以設置debugger 跟蹤調試一下看看number變量是否定義成功。
倘若i值為1,那麼動態的變量就為number_1
後續一樣可以通過這種形式為其賦值:
eval_r("number_"+i.toString()+" = 120;");
這樣就為其變量number_1賦值為120了。
但是這裡絕對不能夠這樣去寫:
eval_r("number_"+i.toString()) = 120
這樣寫是存在於法錯誤的。
以上這種寫法在IE內卻有些行不通,得需要使用executeScript(string)來執行,判斷如下:
if(window.executeScript) { //IE浏覽器 window.executeScript(defineStr); }else { //Chrome、Firefox等非IE浏覽器 window.eval_r(defineStr); }
更多關於JavaScript相關內容可查看本站專題:《JavaScript中ajax操作技巧總結》、《JavaScript中json操作技巧總結》、《JavaScript切換特效與技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript動畫特效與技巧匯總》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數學運算用法總結》
希望本文所述對大家JavaScript程序設計有所幫助。