相关疑难解决方法(0)

Javascript中"options = options || {}"的含义是什么?

前几天我好奇地想到了一段代码,但我不确定它到底是做什么的;

options = options || {};
Run Code Online (Sandbox Code Playgroud)

到目前为止我的想法; 如果存在则将变量设置options为值options,否则设置为空对象.

是/否?

javascript syntax notation

40
推荐指数
4
解决办法
8579
查看次数

逻辑运算符&&和javascript中的两个字符串

当我在两个字符串之间使用逻辑运算符&&时,为什么它会给我第二个字符串作为输出:

console.log("" && "Dog");    // ""
console.log("Cat" && "Dog"); // "Dog"
Run Code Online (Sandbox Code Playgroud)

我意识到有例外0,false,null,undefined,""NaN,一切被评估为布尔在像上面的一个逻辑表达式真.但为什么输出是第二个字符串而不是第一个?为什么输出不仅仅是"真实",因为它被评估为布尔表达式?

javascript string operators

27
推荐指数
3
解决办法
1万
查看次数

JavaScript中的双倍符号

这是什么意思:>>在JavaScript中意味着什么?

从这个角度来看:

document.onkeydown = document.onkeyup = function(e,v,y,k) {
  (i=e.keyCode-37)>>2 || (keys[i] = e.type[5]&&1||(0))
}
Run Code Online (Sandbox Code Playgroud)

javascript

23
推荐指数
2
解决办法
9613
查看次数

JavaScript &&运算符用于返回

我正在努力了解JavaScript库,并且遇到了以下语句:

const assetsManifest = process.env.webpackAssets && JSON.parse(process.env.webpackAssets)

然后在库中,它assetsMannifest像对象一样使用

assetsManifest['/vendor.js']

我认为&&运算符仅用于返回boolean逻辑检查中的值。有人可以告诉我这是怎么回事吗?

非常感谢,

克莱门特

javascript

5
推荐指数
2
解决办法
1104
查看次数

为什么AND(&&)运算符返回数组而不是布尔值?

var array = props && props.children.find(ele => ele && ele.length);
Run Code Online (Sandbox Code Playgroud)

弄乱我的是AND(&&).前一行代码不应该返回一个布尔值吗?我知道它没有,因为我已经尝试过它,它返回一个数组.

谁能解释一下这里发生了什么?

javascript syntax logical-operators

3
推荐指数
1
解决办法
290
查看次数

为什么在 Javascript 中布尔运算符既不返回 false 也不返回 true?

var operand1 = null;
var operand2 = true;
var booleanOperatorReturnsABoolean = operand1 && operand2;
booleanOperatorReturnsABoolean == false || booleanOperatorReturnsABoolean == true
Run Code Online (Sandbox Code Playgroud)

结果:

在 JavaScript 控制台中运行此命令表明布尔运算符 (&&) 有时可能不会产生布尔值

javascript

2
推荐指数
1
解决办法
700
查看次数

从 JS 函数返回 && 表达式

这是我正在使用的功能。我实际上在React Native 文档中找到了它:

var testFunction = function(word) {
  return word && '';
}
Run Code Online (Sandbox Code Playgroud)

这是我如何使用此功能:

var testWord = testFunction("Alex");
Run Code Online (Sandbox Code Playgroud)

终值testWord,由归国testFunction,是""

我本来希望返回的值是trueor false,作为&&表达式的结果。但是,该值是一串 value ""

有人可以解释这背后的逻辑吗?

javascript

1
推荐指数
1
解决办法
1249
查看次数

1 && 2 && 3返回3。有人可以解释为什么

我最近在一次采访中被问到了这个问题。我知道在JavaScript中评估从左到右。1 && 2应该是假的吧?我在这里读到另一个问题,即1 && 2返回2。而AND返回第一个伪造的值。但是感觉模糊。有人可以详细说明吗?

javascript

1
推荐指数
2
解决办法
153
查看次数

Javascript &&运算符 - 澄清?

编辑: 引用已删除.与问题无关.

为什么它总是(当所有都是真的时候)取最后一个值?

例子 :

f= 1 && 2 && 3 //3

f= 'k' && 'd' && 's' //'s'

ps:我注意到在使用$ .callbacks调查pub/sub时

在此输入图像描述

javascript jquery

0
推荐指数
1
解决办法
659
查看次数

javascript || 运算符根据顺序给出不同的结果

我理解|| b返回一个对象,而不是布尔值.我只是想不通为什么javascript会给出不同的结果

undefined || "" (result is "")
"" || undefined (result is undefined)
Run Code Online (Sandbox Code Playgroud)

我认为两者都应该返回"".有人可以向我解释一下吗?谢谢!

更新:@Quentin清楚地回答,""被评估为false,如果a和b都被评估为false,则|| b将返回b.

javascript

0
推荐指数
1
解决办法
61
查看次数