DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> 對js eval()函數的一些見解
對js eval()函數的一些見解
編輯:關於JavaScript     

一、eval是基本使用規則

•1 eval() 函數可計算某個字符串,並執行其中的的 JavaScript 代碼。

•2 eval(string)

•3 string必需。要計算的字符串,其中含有要計算的 JavaScript 表達式或要執行的語句。

•4 eval()只有一個參數。

•5 eval使用比較不安全,忘慎重使用

二、eval的錯誤使用方法

•1 如果傳入的參數不是字符串,它直接返回這個函數。

•2 如果參數是字符串,它會把字符串當成JavaScript代碼進行編譯,如果編譯失敗者拋出一個語法錯誤異常。

•3 如果編譯成功,則開始執行這一段代碼,並返回字符串中的最後一個表達式或語句的值,

•4 如果最後一個表達式或語句沒有值,則最終返回undefined。

三、使用例子

<!DOCTYPE html> 
<html> 
  <head> 
    <meta charset="UTF-8"> 
    <title>eval</title> 
  </head> 
  <body>     
     
    <script type="text/javascript"> 
 
       //正確輸入 
        var x = 10; 
        document.write(eval(10*x + 10)) //表達式 輸出110 
        document.write("<br />"); 
        document.write(eval("10 == x")); //表達式 輸出true 
        document.write("<br />"); 
        eval(document.write(2+5*x));  //執行語句 輸出52 
  
      //非正常輸入 
       try{ 
        var y = 8; 
        //表達式 
        document.write(eval("9+6*x"+"100")); //如果參數中沒有合法的表達式和語句,則拋出 SyntaxError 異常。 
        document.write("<br />");  
        eval('++++2');   //編譯失敗ReferenceError異常 
        eval(document.write(2+2)); //編譯成功 
        document.write(eval());  //返回undefined 
 
        var my = eval();       //如果試圖覆蓋 eval 屬性或把 eval() 方法賦予另一個屬性, 
        document.write(my(1+2));  //並通過該屬性調用它,則 ECMAScript 實現允許拋出一個 EvalError 異常。 
         
        } 
   
       catch(exception) { 
        alert(exception); 
       } 
        
    </script> 
     
  </body> 
</html>

我自己查了好多資料,也還很模糊,希望了解的大神能指點指點!

以上這篇對js eval()函數的一些見解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved