posts - 60,comments - 71,trackbacks - 0

              eval可以將字符串生成語句執(zhí)行,和SQL的exec()類似。 
          eval的使用場合是什么呢?有時候我們預(yù)先不知道要執(zhí)行什么語句,只有當條件和參數(shù)給時才知道執(zhí)行什么語句,這時候eval就派上用場了。舉個例子: 
          我們要做一個function(),功能是輸入網(wǎng)頁中兩個個對象的名稱,然后程序就將這兩個對象的值聯(lián)接起來輸出。
          function output(a,b) 

          var tmpa,tmpb; 
          tmpa=document.all.a.value; 
          tmpb=document.all.b.value; 
          document.write(tmpa+tmpb); 

          output('input1','input2'); 
          這樣你執(zhí)行的時候就會提示錯誤“document.all.a不是對象”以及“document.all.b不是對象”。原來javascript把a和b當成對象名稱了,怎樣能讓javascript把a里面的值作為對象名稱呢?這時候就要用eval了,把代碼改成這樣:
          function output(a,b) 

          var tmpa,tmpb; 
          tmpa=eval("document.all."+a+".value"); 
          tmpb=eval("document.all."+b+".value"); 
          document.write(tmpa+tmpb); 

          output('input1','input2'); 
          這樣javascript就會先取出a,b的值,然后和前面的document.all.以及后面的.value組合運行,于是就可以 
          順利取出input1和input2的值.
          posted on 2008-06-22 15:35 henry1451 閱讀(244) 評論(0)  編輯  收藏 所屬分類: Jsp,Js,Ajax,Html技術(shù)
          主站蜘蛛池模板: 罗山县| 阿拉善右旗| 额济纳旗| 沁水县| 沅陵县| 齐齐哈尔市| 通化市| 边坝县| 太湖县| 那坡县| 维西| 桐庐县| 柳江县| 文山县| 奉化市| 常熟市| 永顺县| 宜阳县| 阜阳市| 农安县| 乌兰浩特市| 长春市| 平乡县| 水城县| 巫山县| 兴国县| 沙田区| 濮阳市| 洮南市| 大荔县| 石台县| 河津市| 偃师市| 千阳县| 阿克| 大宁县| 宁津县| 双柏县| 花莲市| 延吉市| 罗源县|