调用函数时如何按名称设置变量?
How do I set variables by name when calling a function?
说我有这个代码:
function helloWorld() {
console.log(helloText);
}
当我调用这个函数时,我想做这样的事情:
helloWord(
helloText = "some example text";
)
这当然行不通。但我的想法是,我想在调用该函数时通过引用它的名称来更改变量。我看到很多 jQuery 幻灯片和类似的东西,但我似乎无法弄明白。我能找到的最接近的是:
function helloWorld(helloText) {
console.log(helloText);
}
helloWorld("some example text");
哪个可行,但如果变量列表较长,就会变得笨拙。那么我怎样才能使用它的名称来更改变量值呢?
Javascript 中没有关键字参数。为了模仿这种行为,您可以使用对象字面量,如下所示:
function helloWorld(args) {
console.log(args.helloText);
}
helloWord({
helloText: "some example text"
});
基于其他答案,ECMAScript 6 introduces destructuring and default parameters。这使您可以轻松模拟关键字参数:
function helloWorld({helloText} = {}) {
console.log(helloText);
}
helloWord({
helloText: "some example text"
});
您现在可以通过预处理器使用 ES6 功能,例如 6to5。
说我有这个代码:
function helloWorld() {
console.log(helloText);
}
当我调用这个函数时,我想做这样的事情:
helloWord(
helloText = "some example text";
)
这当然行不通。但我的想法是,我想在调用该函数时通过引用它的名称来更改变量。我看到很多 jQuery 幻灯片和类似的东西,但我似乎无法弄明白。我能找到的最接近的是:
function helloWorld(helloText) {
console.log(helloText);
}
helloWorld("some example text");
哪个可行,但如果变量列表较长,就会变得笨拙。那么我怎样才能使用它的名称来更改变量值呢?
Javascript 中没有关键字参数。为了模仿这种行为,您可以使用对象字面量,如下所示:
function helloWorld(args) {
console.log(args.helloText);
}
helloWord({
helloText: "some example text"
});
基于其他答案,ECMAScript 6 introduces destructuring and default parameters。这使您可以轻松模拟关键字参数:
function helloWorld({helloText} = {}) {
console.log(helloText);
}
helloWord({
helloText: "some example text"
});
您现在可以通过预处理器使用 ES6 功能,例如 6to5。