str*_*ade 19 javascript with-statement
我看到了JavaScript代码with.这有点令人困惑.它做了什么以及如何正确使用?
with (sObj) return options[selectedIndex].value;
Run Code Online (Sandbox Code Playgroud)
Jus*_*ner 22
它增加了块中包含的语句的范围:
return sObj.options[selectedIndex].value;
Run Code Online (Sandbox Code Playgroud)
可以变成:
with (sObj)
return options[selectedIndex].value;
Run Code Online (Sandbox Code Playgroud)
在你的情况下,它并没有做很多...但请考虑以下内容:
var a, x, y;
var r = 10;
a = Math.PI * r * r;
x = r * Math.cos(PI);
y = r * Math.sin(PI /2);
Run Code Online (Sandbox Code Playgroud)
变为:
var a, x, y;
var r = 10;
with (Math) {
a = PI * r * r;
x = r * cos(PI);
y = r * sin(PI / 2);
}
Run Code Online (Sandbox Code Playgroud)
...节省了几次击键.Mozilla文档实际上可以更详细地解释一些事情(以及使用它的优点和缺点):
| 归档时间: |
|
| 查看次数: |
1623 次 |
| 最近记录: |