欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JS中的eval 為什么加括號(hào)

 更新時(shí)間:2016年04月13日 17:28:24   作者:劉江龍  
JS中的eval 為什么加括號(hào)呢?相信很多朋友都不是很清楚吧,下面小編通過(guò)本教程幫助大家學(xué)習(xí)JS中的eval 為什么加括號(hào),感興趣的朋友了解下吧

eval簡(jiǎn)介

---eval在ECMA定義中是全局對(duì)象原型的方法;

---eval接受的參數(shù)是字符串格式的js代碼, 將由執(zhí)行引擎(記得'高級(jí)程序設(shè)計(jì)'還是哪說(shuō)過(guò), 此時(shí)新建一個(gè)執(zhí)行引擎)執(zhí)行這段字符串, 然后返回結(jié)果到eval調(diào)用的位置.

<!DOCTYPE html>
<html>
<head>
<title>eval學(xué)習(xí)</title>
<script type="text/javascript">
/*
eval("表達(dá)式");執(zhí)行表達(dá)式語(yǔ)句
eval("("+javascript類(lèi)型+")");轉(zhuǎn)為javascript對(duì)象
*/
var jsonObj={"name":"ljl","data":123};//json,是javascript的對(duì)象
var jsonString='{"name":"ljl","data":123}';//javascript的string類(lèi)型,字符串內(nèi)容符合json格式的樣式
var objType=eval("("+jsonString+")");//通過(guò)eval函數(shù)將json字符轉(zhuǎn)為javascript對(duì)象
alert( typeof jsonString);//string
alert( typeof objType);//obj
alert(eval(123));//123
alert(typeof eval("("+123+")"));//number
var x=2;
var y=eval('x+1');//執(zhí)行 2+1 表達(dá)式
alert('y= '+y);//3
</script>
</head> 
<body>
</body>
</html>

補(bǔ)充:總結(jié)

eval是js動(dòng)態(tài)特性之一, 通過(guò)它直接執(zhí)行js程序并返回結(jié)果, 常見(jiàn)的使用就是還原json數(shù)據(jù)為js對(duì)象;

但是由于其能在運(yùn)行時(shí)動(dòng)態(tài)改變上下文對(duì)象, 因此帶來(lái)了注入攻擊的風(fēng)險(xiǎn);

使用時(shí), 注意eval對(duì)字符串的語(yǔ)法認(rèn)識(shí)是如何的, 常見(jiàn)的就是'大括號(hào)'問(wèn)題

相關(guān)文章

  • javascript中sort()的用法實(shí)例分析

    javascript中sort()的用法實(shí)例分析

    這篇文章主要介紹了javascript中sort()的用法,實(shí)例分析了sort()的功能、定義及使用技巧,需要的朋友可以參考下
    2015-01-01
  • angular之ng-template模板加載

    angular之ng-template模板加載

    本篇文章主要介紹了angular之ng-template模板加載,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-11-11
  • 探索Javascript中this的奧秘

    探索Javascript中this的奧秘

    本文介紹了JavaScript中的this關(guān)鍵字在各種情況下的含義,實(shí)例都很簡(jiǎn)單,這樣更能有助于加深理解。雖然這只是js中一個(gè)很小的概念,但借此我們可以了解js中函數(shù)的執(zhí)行環(huán)境,充分掌握this的相關(guān)知識(shí)有助于我們?cè)诰帉?xiě)面向?qū)ο蟮腏avaScript程序時(shí)能夠游刃有余。
    2016-12-12
  • fullpage.js全屏滾動(dòng)的具體使用方法

    fullpage.js全屏滾動(dòng)的具體使用方法

    fullPage.js 是一個(gè)基于 jQuery 的插件,它能夠很方便、很輕松的制作出全屏網(wǎng)站,本文主要介紹了fullpage.js全屏滾動(dòng)的具體使用方法,感興趣的可以了解一下
    2021-09-09
  • 純js實(shí)現(xiàn)無(wú)限空間大小的本地存儲(chǔ)

    純js實(shí)現(xiàn)無(wú)限空間大小的本地存儲(chǔ)

    這篇文章主要介紹了純js實(shí)現(xiàn)無(wú)限空間大小的本地存儲(chǔ)的功能,源碼和demo都放給大家,本文著重說(shuō)下實(shí)現(xiàn)的原理,具體的實(shí)踐擴(kuò)展小伙伴們自由發(fā)揮吧。
    2015-06-06
  • 微信小程序防止多次點(diǎn)擊跳轉(zhuǎn)和防止表單組件輸入內(nèi)容多次驗(yàn)證功能(函數(shù)防抖)

    微信小程序防止多次點(diǎn)擊跳轉(zhuǎn)和防止表單組件輸入內(nèi)容多次驗(yàn)證功能(函數(shù)防抖)

    這篇文章主要介紹了微信小程序防止多次點(diǎn)擊跳轉(zhuǎn)和防止表單組件輸入內(nèi)容多次驗(yàn)證功能(函數(shù)防抖),需要的朋友可以參考下
    2019-09-09
  • json對(duì)象轉(zhuǎn)為字符串,當(dāng)做參數(shù)傳遞時(shí)加密解密的實(shí)現(xiàn)方法

    json對(duì)象轉(zhuǎn)為字符串,當(dāng)做參數(shù)傳遞時(shí)加密解密的實(shí)現(xiàn)方法

    下面小編就為大家?guī)?lái)一篇json對(duì)象轉(zhuǎn)為字符串,當(dāng)做參數(shù)傳遞時(shí)加密解密的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-06-06
  • javascript currentTarget對(duì)象介紹

    javascript currentTarget對(duì)象介紹

    javascript currentTarget對(duì)象介紹...
    2007-10-10
  • JavaScript使用canvas實(shí)現(xiàn)手寫(xiě)簽名功能

    JavaScript使用canvas實(shí)現(xiàn)手寫(xiě)簽名功能

    最近遇到一個(gè)h5手寫(xiě)簽名的需求,按理說(shuō)這種功能網(wǎng)上隨便一搜一大把現(xiàn)成的源碼和組件,但是像這種比較經(jīng)典又很簡(jiǎn)單的功能,還是要弄清楚到底怎么實(shí)現(xiàn)的,所以接下來(lái)本文就給大家介紹一下如何用canvas實(shí)現(xiàn)手寫(xiě)簽名功能
    2023-08-08
  • JSON.parse損壞大數(shù)字的原因解析及解決方案

    JSON.parse損壞大數(shù)字的原因解析及解決方案

    從10多年前JSON在線(xiàn)編輯器的早期開(kāi)始,用戶(hù)經(jīng)常反映編輯器有時(shí)會(huì)破壞他們JSON文檔中的大數(shù)字的問(wèn)題,這篇文章主要介紹了為什么JSON.parse會(huì)損壞大數(shù)字,如何解決這個(gè)問(wèn)題,需要的朋友可以參考下
    2022-10-10

最新評(píng)論