2

ここのサイトで多くの質問を読みましたが、括弧の問題を理解できませんでした。

eval( '{a:alert(1)}'); //alert 1

だけでなく、このアラート 1 :

eval( '('+'{a:alert(1)}'+')'); //alert 1

では、どのよう'()'に私を助けますか?

()コードがステートメントとしてではなく式として読み取られるようにすることはすでに知っています

しかし、私のサンプルでは、​​それがどのように役立つかわかりません。

サンプルを提供していただけますか?

4

1 に答える 1

1

検討:

eval("({a: 'my great object'}.a);");

eval("{a: 'my great object'}.a;");

すでに述べたように、2 つ目はラベルが付いたコードのブロックであるため、.a にはまったく意味がありません。

于 2012-12-16T10:25:35.857 に答える