色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

eval 不識別jquery

傅智翔2年前10瀏覽0評論

在使用eval時,我們可能會遇到一些問題,其中之一就是它不能正確識別jQuery。具體原因是因為在解析字符串時,eval函數不會自動載入當前環境的任何變量。而在jQuery中,$是一個全局變量,因此在eval函數中使用時,會報錯

var str = '$("p").hide()';
eval(str); // 報錯:Uncaught ReferenceError: $ is not defined

為了解決這個問題,我們可以使用Function()來代替eval函數。因為Function函數在內部自動創建了一個函數作用域,可以識別全局變量。

var str = '$("p").hide()';
var func = new Function(str);
func(); // 正確執行

當然,我們也可以在eval函數中自定義一個$變量,將jQuery對象引用給它

var str = '$("p").hide()';
eval('var $ = jQuery;' + str); // 正確執行

總之,在使用eval函數時,一定要注意它的局限性,避免出現意想不到的錯誤。