最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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類型+")");轉(zhuǎn)為javascript對(duì)象
*/
var jsonObj={"name":"ljl","data":123};//json,是javascript的對(duì)象
var jsonString='{"name":"ljl","data":123}';//javascript的string類型,字符串內(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)文章

最新評(píng)論

金阳县| 武平县| 青岛市| 丹巴县| 大港区| 湖南省| 长海县| 临泽县| 嵊泗县| 油尖旺区| 苍溪县| 包头市| 长丰县| 梓潼县| 会东县| 玉山县| 赣州市| 荆门市| 正阳县| 莆田市| 获嘉县| 抚州市| 遂昌县| 平顶山市| 抚顺县| 宾川县| 汶上县| 梨树县| 葵青区| 江孜县| 永城市| 固阳县| 清丰县| 乌兰察布市| 靖边县| 枣阳市| 梁河县| 兴安盟| 封开县| 虹口区| 武川县|