gpt4 book ai didi

Javascript:如果未定义的运算符不起作用则分配

转载 作者:行者123 更新时间:2023-11-30 10:20:28 25 4
gpt4 key购买 nike

这是一个示例,如果参数为 undefined,我使用 || 运算符分配默认值。

output = function (data) {
console.log("data.flag =", data.flag);
}

main = function (flag) {
output({
flag: flag || true;
});
}

main(true); // data.flag = true
main(false); // data.flag = true

但是,该操作会被忽略,因此始终会分配默认值。我怎样才能解决这个问题?在这里 JSFiddle - 你必须打开控制台才能看到输出。

最佳答案

当你传入 false 时,你就有了这个

flag: false || true;

如果你知道 || 是如何工作的,如果左边是假的,它会选择右边。

你需要检查 undefined 因为 false 是 FALSE

flag: flag!==undefined ? flag : true;

其他选项是检查参数长度

flag: arguments.length ? flag : true;

关于Javascript:如果未定义的运算符不起作用则分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21631024/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com