歡迎使用我的 在線工具

          小D

          讀歷史、看小說、寫程序都是我所愛。技術不好,頭腦不靈光,靠的是興趣。
          隨筆 - 35, 文章 - 25, 評論 - 13, 引用 - 0
          數據加載中……

          使用eval參數進行JS函數調用

          使用JS 中的eval函數,可以將JS字符串作為JS表達式進行執行。

          將下列JS代碼保存為1.js


           function f(num,callback){                                
               //eval()函數,這個函數可以把一個字符串當作一個JavaScript表達式一樣去執行它。                                       
               eval(callback+"('"+num +"')");

           

          再定義一個test.html,保存到和1.js相同的目錄

          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
          <html>
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
          <script src="1.js" type="text/javascript"><script>
          <title>無標題文檔</title>
          <script type="text/javascript">
          function dosome(num){
              if(num) alert("未及格!"); 
              else
              if(num<=90) alert("該生成績優良!");
                 else alert("該生成績優秀!"); 
          }

          function test(){ 
              var num = document.getElementById("score").value; 
              f(num,"dosome");

          </script>
          </head>
          <body>
          <p>
          eval示例:
          </p>
          請輸入學生成績
          <input  type="text" id="score"\>
                                                  
          <input type="button" onClick="test()" value=" 看看結果">
                                                  
          </body>
          </html>

          然后打開test.html,可以看到我們調用了傳過去的dosome()函數,使用eval函數必須保證字符串表示的JS表達式,在當前頁面有效。

          我們可以通過幀的方式來用eval執行任意可訪問的幀的JS代碼。也可以通過打開子窗體的方式,是父窗體和子窗體的JS代碼能夠相互調用,

          而且我們只要傳入函數名字符串(無論何種方式,不如通過url參數的方式),調用者無需知道調用的函數的名稱,只要得到函數名字符串,即可調用,所以比較靈活。

          posted on 2011-04-06 14:46 vagasnail 閱讀(6304) 評論(1)  編輯  收藏 所屬分類: js

          評論

          # re: 使用eval參數進行JS函數調用  回復  更多評論   

          的薩菲
          2013-09-26 16:11 | 十大
          主站蜘蛛池模板: 齐河县| 茶陵县| 报价| 内江市| 阜平县| 华池县| 聂荣县| 寻乌县| 蕲春县| 江阴市| 乃东县| 根河市| 水富县| 蓝田县| 南和县| 邹城市| 义乌市| 界首市| 正安县| 黄平县| 武汉市| 耒阳市| 南陵县| 济阳县| 呼伦贝尔市| 罗甸县| 灌阳县| 安化县| 鹤岗市| 克东县| 五常市| 太原市| 渝北区| 襄樊市| 吴旗县| 盱眙县| 凯里市| 江城| 揭西县| 怀远县| 高州市|