5

Microsoft では、次の構文を使用して JScript で環境変数を設定できます。

var sh = WScript.CreateObject("Wscript.Shell");
var env = sh.Environment("PROCESS");
env("TEST") = "testvalue";

私は 3 番目の行について疑問に思います。この行を「Bad Assigment」と呼んでいる JSLint と一緒に考えてみましょう。

しかし、それはうまくいきます!

関数の戻り値を左辺値として持つことは ECMAscript 標準と互換性がありますか (ここのように)?

はいの場合: そのような関数をどのように記述しますか?

4

1 に答える 1

8

はい、標準では、関数が参照を返すことを許可しています。いいえ、Javascript でそのような関数を作成することはできません。;)

<...> 代入の左側のオペランドは、参照を生成することが期待されています。<...> 関数呼び出しは、参照を返すことが許可されています。この可能性は、純粋にホスト オブジェクトのために認められています。この仕様で定義されている組み込みの ECMAScript 関数は参照を返しません。また、ユーザー定義関数が参照を返すための規定もありません。http://es5.github.io/#x8.7

于 2013-05-22T08:31:12.203 に答える