JavaScript 在一行上定义并返回一个变量
JavaScript define and return a variable on one line
在 JavaScript 中,如果我想返回一个变量,但又不想修改它或将其泄漏到全局范围内,我可以像这样在一行上定义并返回它吗?
return var Foo = 'bar'
但是,我认为我在任何地方都没有看到过这个,我更常看到这个:
var Foo = 'bar'
return Foo
第一个不那么多余,但这是不好的做法吗?
好吧,你肯定需要在你想要的范围内声明变量。 然后,您可以设置该值,并在一行中返回它:
var Foo; // Declares Foo in this scope, though this expression has no L-Value
return (Foo = 'bar'); // Sets Foo to 'bar' and returns the value of Foo
不过,你为什么要这样做是值得怀疑的。 理想情况下,Foo
将在某个父作用域中的其他位置声明。 或者,您将返回一个包含 Foo 值的新函数。
我不明白你为什么要这样做,因为一旦你return
你就超出了范围。
只是做
return 'bar';
如果不了解您要做什么,就很难提供有用的答案,但是:
return var Foo = 'bar'
不是有效的 JavaScript,所以你当然不能那样做。
我同意你的第二个例子是多余的 - 如果你只在返回它时引用它,那么在函数中声明一个变量是没有意义的。消除冗余的方法是根本不声明变量:
function exampleFunction() {
return 'bar';
}
相关文章:
- 如何从jquery函数返回变量
- 返回变量作为构造函数
- 从导出的模块返回变量,并在另一个文件(NodeJS)中使用它
- 在JavaScript和knockout.js中,为什么可以'我不返回一个变量吗?为什么我必须返回变量,就好像它
- 如何从匿名函数返回变量
- 在呈现函数中返回变量
- 在设置超时后返回变量
- AngularJS在大括号中返回变量名称,而不是值
- JQuery:创建扩展返回变量未定义
- 我应该从量角器中元素的 getText() 承诺中分配一个变量或返回变量
- AJAX 在 cicle 完成后返回变量
- 如何返回变量并同时重置/删除它
- 如何从 javascript 中的回调函数返回变量
- 返回变量而不声明它的函数
- 正在从数组中返回变量名
- 从reader.onload事件返回变量
- 延迟返回变量,直到数据从Firebase同步
- 函数不't返回变量
- 如何将函数中的返回变量插入HTML表单
- Javascript 方法不返回变量