在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ ( 0, eval )( "1+1" )路過的大牛來解釋下,

( 0, eval )( "1+1" )路過的大牛來解釋下,這行代碼為啥可以這么寫?啥意思

今天偶然看到這么一句代碼:

(0, eval)( "1+1" );    //2

于是我仿照了一個:

( 0, function( a ) {
    console.log( a );        //"hello world"
} )( "hello world" );

( function( a ) {
    console.log( a );        //為啥不傳到這里???
}, function( b ) {
    console.log( b );        //"hello world"
} )( "hello world" );

瞬間????飛過,哪位大神能解釋下?

回答
編輯回答
伐木累

1.小括號的用法之一是執(zhí)行單個或多個表達(dá)式,并返回最后一個表達(dá)式的值,多個表達(dá)式之間需要用逗號“,”分隔開
例:(1,2+3,4+5,6)//代碼會被一次執(zhí)行,最后將6作為返回值
2.自執(zhí)行匿名函數(shù)(function(){})()
所以你這個可以看做等于(eval)('1+1')
再次等于 eval('1+1')

2018年3月8日 15:56
編輯回答
雨蝶

你得理解逗號是什么意思
https://developer.mozilla.org...
最后一個才會有效

2017年6月3日 02:13