Python eval()函數的用法


1.eval() 函數作用:可以接受一個字符串str作為參數,並把這個參數作為腳本代碼來

執行。

2.參數情況:(1)如果參數是一個表達式,eval() 函數將執行表達式;

                  (2) 如果參數是Javascript語句,eval()將執行 Javascript 語句

3.注意:(如果執行結果是一個值就返回,不是就返回undefined,如果參數不是一

個字符串,則直接返回該參數)

4.語法:eval(string),

5.案例:

eval("var a=1");//聲明一個變量a並賦值1。

eval("2+3");//執行加運算,並返回運算值。

eval("mytest()");//執行mytest()函數。

eval("{b:2}");//聲明一個對象。如果想返回此對象,則需要在對象外面再嵌套一層小括如下:eval("({b:2})"); 

注意:使用eval來解析JSON格式字符串的時候,會將{}解析為代碼塊,而不是對象的字面量
        //1.在JSON格式的字符串前面拼接上 "var o ="
        //2.把JSON格式的字符串使用()括起來,就不會將{}解析為代碼塊,而是表達式

6.函數作用域:eval()函數並不會創建一個新的作用域,並且它的作用域就是它所在的

作用域,有時候需要將eval()函數的作用域設置為全局,當然可以將eval()在全局作用

域中使用,這個時候可以用window.eval()的方式實現。

7.Function和eval有什么區別?

共同點:都可以講字符串轉化為js代碼

不同點:Function創建出來的函數,並不會直接調用,只有當手動去調用創建出來的函數的時候才,eval把字符串

轉化為代碼后,直接就執行了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM