Microsoft 允许使用以下语法在 JScript 中设置环境变量:
var sh = WScript.CreateObject("Wscript.Shell");
var env = sh.Environment("PROCESS");
env("TEST") = "testvalue";
我想知道第三行——还有 JSLint,它把这行称为“错误分配”。
但它有效!
将函数的返回值作为左值(如这里)是否兼容 ECMAscript 标准?
如果是:如何编写这样的函数?
Microsoft 允许使用以下语法在 JScript 中设置环境变量:
var sh = WScript.CreateObject("Wscript.Shell");
var env = sh.Environment("PROCESS");
env("TEST") = "testvalue";
我想知道第三行——还有 JSLint,它把这行称为“错误分配”。
但它有效!
将函数的返回值作为左值(如这里)是否兼容 ECMAscript 标准?
如果是:如何编写这样的函数?
是的,标准允许函数返回引用。不,你不能用 Javascript 编写这样的函数。;)
<...> 赋值的左侧操作数预计会产生引用。<...> 函数调用被允许返回引用。这种可能性纯粹是为了宿主对象而被承认的。本规范定义的内置 ECMAScript 函数没有返回引用,也没有规定用户定义的函数返回引用。http://es5.github.io/#x8.7