javascript - 简写 if 语句始终返回 'false' 而不是分配的值

标签 javascript if-statement arguments conditional-operator

我试图在 Javascript 中使用简写 if 语句来查明我的参数之一是否为负数,如果是,我想将其更改为特定值。这是我的代码:

var findDigit = function(num, nth){
nth = nth < 0 ? nth === -1: nth;
}

我想问的是,如果 nth 小于 0,则将 nth 更改为 -1,如果它小于 0,则不执行任何操作,或者保留事情就是这样。当我控制台记录第 n 个参数时,我得到“false”。

我其他时候也遇到过这个问题。所以我想我要问的是,如何编写没有“else”部分的简写 if 语句?我有一段代码,如果 if 语句为 true,我希望它运行,但如果它为 false,我不希望它执行任何操作。谢谢!

最佳答案

因为你的 if 语句:nth < 0执行以下代码:nth === -1这是一个检查(包括类型),如果 nth 恰好是 -1。只需省略这部分并打印

var findDigit = function(num, nth){
  nth = nth < 0 ? -1: nth;
}

关于javascript - 简写 if 语句始终返回 'false' 而不是分配的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39808030/

相关文章:

javascript - ajax 数据在 jquery 的点击事件中不起作用

Javascript > 运算符在扩展中不起作用

php - 如果最大时间戳大于其他最大时间戳

路亚: copying a table efficiently (deep copy)

javascript - 使用 javascript 或 jquery chop 下拉菜单中的项目和选定的项目

javascript - ionic 侧菜单中的异步工厂

java - Java 中的循环(初学者)

python - 使用 `*args` ,关键字参数变成位置参数?

集会;有谁知道如何将多个参数带入函数中? (Linux、-m32、x86)

javascript - 如何让用户上传的图片转换为Base64