更新 javascript 中的现有默认参数

Update existing default parameter in javascript

在 javascript 中,是否可以更新现有函数的默认参数值?

假设我有:

function addNumbers(a, b=2) {
    return a+b;
}

稍后在我的程序中我想更新 b 的默认值所以如果有人调用 addNumbers 只有一个参数 b 现在默认为其他东西,但是如果他们用两个参数调用 addNumbers,这两个参数仍然会被使用。

如果这样的事情是可能的,你会怎么做?

编辑:

我知道如果原始函数像这样使用全局变量作为默认值是可能的:

let defaultB = 2;
function addNumbers(a, b=defaultB) {
    return a+b;
}

然后对 defaultB 的任何更新都将更新 b 的默认值。有谁知道没有全局变量的方法吗?

您可以使用变量或 属性 代替文字,例如

function addNumbers(a, b=addNumbers.b) {
    return a+b;
}
addNumbers.b = 2;

console.log(addNumbers(5))

addNumbers.b = 100;

console.log(addNumbers(5))

除了迷惑别人,我不确定这有什么实际用途。