将值传递给函数中的第n个变量,但不传递值';javascript中的s到n-1变量
我只想将值传递给第二个参数将值传递给函数中的第n个变量,但不传递值';javascript中的s到n-1变量,javascript,Javascript,我只想将值传递给第二个参数 function ask(x, y){ alert(x+":"+y); } ask(y=9); 警报应为-->未定义:9 有没有办法呢 请你不要告诉我那是应该做的以下事情 ask(undefined,9); JS不支持命名参数;你不能那样做。您可以使用分解来模拟它 function ask({x, y}={}) { alert(x+":"+y); } ask({y: 1}); 您可以这样做: function ask (x, y) { if (a
function ask(x, y){
alert(x+":"+y);
}
ask(y=9);
警报应为-->未定义:9
有没有办法呢
请你不要告诉我那是应该做的以下事情
ask(undefined,9);
JS不支持命名参数;你不能那样做。您可以使用分解来模拟它
function ask({x, y}={}) {
alert(x+":"+y);
}
ask({y: 1});
您可以这样做:
function ask (x, y) {
if (arguments.length === 1) {
// only one argument was given. Set it to 'y'.
y = arguments[0];
x = undefined;
}
alert(x+":"+y);
}
一些测试:
ask('hello', 'world'); // alerts 'hello:world'
ask('oops'); // alerts 'undefined:oops'
那么第三个参数在哪里?对不起,我刚刚更新了问题,你没有。创建一个包装器,或者根据params值在函数中玩游戏,或者传递一个对象,应用部分函数应用程序,等等。无论如何,假设ES6。是的,这就是问题中所述的假设。