Javascript替代eval方法


Javascript替代eval方法

 

通常我們在使用ajax獲取到后台返回的json數據時,都要使用 eval 這個方法將json字符串轉換成對象數組, 像這樣:

obj = eval('('+data+')')

而使用這個方法會導致編輯器中的jshint報錯:

JSHint 6:19 eval can be harmful.

SO. 使用替代eval的方法即可拯救強迫症患者:

方法1:

//計算表達式的值 function evil(fn) { var Fn = Function; //一個變量指向Function,防止有些前端編譯工具報錯 return new Fn('return ' + fn)(); }

方法2

function eval1 (str) { var script = document.createElement('script'); script.type="text/javascript"; script.text=str; document.getElementsByTagName('head')[0].appendChild(script); document.head.removeChild(document.head.lastChild); }

 

方法1親測有效!

 


免責聲明!

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



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