javascriptÖеÄevalº¯ÊýµÄÓ÷¨(תÌù)
±¾ÎĵÄÁ½¸öÄ¿µÄ£º
£¨1£©½éÉÜjavascriptÖеÄevalº¯ÊýµÄÓ÷¨
£¨2£©ÈçºÎÔÚº¯ÊýÄÚÖ´ÐÐÈ«¾Ö´úÂë
►ÏÈÀ´ËµevalµÄÓ÷¨£¬ÄÚÈݱȽϼòµ¥£¬ÊìϤµÄ¿ÉÒÔÌø¹ý¡£
evalº¯Êý½ÓÊÕÒ»¸ö²ÎÊýs£¬Èç¹ûs²»ÊÇ×Ö·û´®£¬ÔòÖ±½Ó·µ»Øs¡£·ñÔòÖ´ÐÐsÓï¾ä¡£Èç¹ûsÓï¾äÖ´Ðнá¹ûÊÇÒ»¸öÖµ£¬Ôò·µ»Ø´ËÖµ£¬·ñÔò·µ»Øundefined¡£
ÐèÒªÌØ±ð×¢ÒâµÄÊǶÔÏóÉùÃ÷Óï·¨“{}”²¢²»ÄÜ·µ»ØÒ»¸öÖµ£¬ÐèÒªÓÃÀ¨ºÅÀ¨ÆðÀ´²Å»á·µ»ØÖµ£¬¼òµ¥Ê¾ÀýÈçÏ£º
var code1='"a" + 2'; //±í´ïʽ
var code2='{a:2}'; //Óï¾ä
alert(eval(code1)); //->'a2'
alert(eval(code2)); //->undefined
alert(eval('(' + code2 + ')')); //->[object Object]
¸´ÖÆ´úÂë
¿ÉÒÔ¿´µ½£¬¶ÔÓÚ¶ÔÏóÉùÃ÷Óï¾äÀ´Ëµ£¬½ö½öÊÇÖ´ÐУ¬²¢²»ÄÜ·µ»ØÖµ¡£ÎªÁË·µ»Ø³£Óõē{}”ÕâÑùµÄ¶ÔÏóÉùÃ÷Óï¾ä£¬±ØÐëÓÃÀ¨ºÅÀ¨×¡£¬ÒÔ½«Æäת»»Îª±í´ïʽ£¬²ÅÄÜ·µ»ØÆäÖµ¡£ÕâÒ²ÊÇʹÓÃJSONÀ´½øÐÐAjax¿ª·¢µÄ»ù±¾ÔÀíÖ®Ò»¡£ÔÚÀý×ÓÖпÉÒÔÇå³þµÄ¿´µ½£¬µÚ¶þ¸öalertÓï¾äÊä³öµÄÊÇundefined£¬¶øµÚÈý¸ö¼ÓÁËÀ¨ºÅºóÊä³öµÄÊÇÓï¾ä±íʾµÄ¶ÔÏó¡£
►ÏÖÔÚÀ´Ëµ±¾ÎĵÄÖØµã£¬ÈçºÎÔÚº¯ÊýÄÚÖ´ÐÐÈ«¾Ö´úÂ롣ΪÁË˵Ã÷Õâ¸öÎÊÌ⣬ÏÈ¿´Ò»¸öÀý×Ó£º
var s='global'; //¶¨ÒåÒ»¸öÈ«¾Ö±äÁ¿
function demo1(){
eval('var s="local"');
}
demo1();
alert(s); //->global
¸´ÖÆ´úÂë
ºÜºÃÀí½â£¬ÉÏÃæµÄdemo1º¯ÊýµÈ¼ÛÓÚ£ºfunction demo1(){var s='local';}£¬ÆäÖж¨ÒåÁËÒ»¸ö¾Ö²¿±äÁ¿s¡£
ËùÒÔ×îºóµÄÊä³öÊÇglobal²¢²»ÊÇÊ²Ã´Ææ¹ÖµÄÊÂÇ飬±Ï¾¹´ó¼Ò¶¼ÄܺÜÇå³þµÄÇø·Ö¾Ö²¿±äÁ¿ºÍÈ«¾Ö±äÁ¿¡£
×ÐϸÌå»áһϣ¬¿ÉÒÔ·¢ÏÖevalº¯ÊýµÄÌØµã£¬Ëü×ÜÊÇÔÚµ÷ÓÃËüµÄÉÏÏÂÎıäÁ¿¿Õ¼ä£¨Ò²³ÆÎª£º°ü£¬closure£©ÄÚÖ´ÐУ¬ÎÞÂÛÊDZäÁ¿¶¨Ò廹ÊǺ¯Êý¶¨Òå¶¼ÊÇÈç´Ë£¬ËùÒÔÈçϵĴúÂë»á²úÉúº¯Êý䶨ÒåµÄ´íÎó£º
var s='function test(){return 1;}'; //Ò»¸öº¯Êý¶¨ÒåÓï¾ä
function demo2(){
eval(s);
}
demo2();
alert(test()); //->error:test is not defined
¸´ÖÆ´úÂë
ÕâÊÇÒòΪtestº¯ÊýÔÚ¾Ö²¿¿Õ¼ä¶¨Ò壬demo2º¯ÊýÄÚ¿ÉÒÔ·ÃÎʵ½£¬ÍâÃæ¾Í·ÃÎʲ»µ½ÁË¡£
¶øÔÚʵ¼ÊµÄAjax¿ª·¢ÖУ¬ÓÐʱÎÒÃÇÐèÒª´Ó·þÎñÆ÷¶¯Ì¬»ñÈ¡´úÂëÀ´Ö´ÐУ¬ÒÔ¼õÇáÒ»´ÎÔØÈë´úÂë¹ý¶àµÄÎÊÌ⣬»òÕßÊÇһЩ´úÂëÊÇͨ¹ýJavascript×ÔÉíÉú³ÉµÄ£¬Ï£ÍûÓÃevalº¯ÊýÀ´Ê¹ÆäÖ´ÐС£
µ«ÕâÑùµÄ¶¯Ì¬»ñÈ¡´úÂëµÄ¹¤×÷Ò»°ãÔÚº¯ÊýÄÚÍê³É£¬±ÈÈ磺
function loadCode(){
var code=getCode();
eval(code);
}
¸´ÖÆ´úÂë
¿É¼ûeval²»¿ÉÄÜÔÚÈ«¾Ö¿Õ¼äÄÚÖ´ÐÐ
Ïà¹ØÎĵµ£º
¿´µ½Ò»¸öÔø¾¸ã¹ýwebµÄÈ˵ÄblogÖÐ˵µ½Èç¹ûѧJavascript²»¶®ÔÐÎÁ´£¬¾ÍÌ«Òź¶ÁË£¬ËùÒÔµ±×Ô¼º¿´¡¶javascript¸ß¼¶³ÌÐòÉè¼Æ¡·Ê±¾ÍÁôÒâÁËһϣ¬ËµÊµ»°£¬ÏÂÃæµÄ´úÂëºÜ¼òµ¥£¬µ«ÊDz»ÊǺܶ®ËùνµÄÔÐÎÁ´ºÍ¶ÔÏóð³äÖ®ÀàµÄ¶«Î÷ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org ......
var vKeyCode= e.getKeyCode();
if (vKeyCode >= 65 && vKeyCode <= 90 ) // Caps Lock ´ò¿ª
{
......
function BOX_show(e,obj)//ÏÔʾ
{
if(obj<24)
document.cookie = "tdid="+obj;
if(document.getElementById(e)==null)
{
return ;
}
&n ......
³ÌÐòÉè¼ÆÖлᾳ£Åöµ½Ò»ÖÖÇé¿ö£¬¾ÍÊÇÊÂÏÈÎÞ·¨µÃÖªÓû§»áÐèÒªÄÄЩÊý¾Ý£¬±ØÐë¸ù¾ÝÓû§Ñ¡ÔñºóÔÙ´Ó·þÎñÆ÷
ÖØÐÂÌáÈ¡Êý¾Ýºó·´À¡¸øÓû§¡£±ÈÈçÒ»¼òµ¥µÄÇé¿ö£¬Óû§Ñ¡ÔñÊ¡·ÝÒÔºó£¬ÎÒÃÇÁ¢¼´»áÔÚÊÐÀï±ß½«Õâ¸öÊ¡µÄËùÓÐ
ÊÐÖØÐÂÏÔʾ³öÀ´¡£ÕâÖÖÇé¿öÒ»°ãÐèÒª½«Õû¸öÒ³ÃæË¢Ðºó²Å¿ÉÒÔÖØÐ¶ÁÈ¡£¬µ«ÕâÑù²»½öЧÂʲ»¸ßÍ⣬ҲÏԵò»
Ì«ÓÅÑÅ¡£Æäʵ ......
YUI Compressor ѹËõ JavaScript µÄÄÚÈݰüÀ¨£º
ÒÆ³ý×¢ÊÍ
ÒÆ³ý¶îÍâµÄ¿Õ¸ñ
ϸ΢ÓÅ»¯
±êʶ·ûÌæ»»£¨Identifier Replacement£©
YUI Compressor °üÀ¨ÄÄЩϸ΢ÓÅ»¯ÄØ£¿
object["property"] £¬Èç¹ûÊôÐÔÃûÊǺϷ¨µÄ JavaScript ±êʶ·û£¨×¢£ººÏ·¨µÄ JavaScript ±êʶ·û——ÓÉÒ»¸ö×Öĸ¿ªÍ·£¬ÆäºóÑ¡ÔñÐԵؼÓÉÏÒ»¸ö»òÕ ......