2018-10-10 18:03:03 -04:00
|
|
|
|
---
|
|
|
|
|
id: 56533eb9ac21ba0edf2244d9
|
2021-03-14 21:20:39 -06:00
|
|
|
|
title: 逻辑或运算符
|
2018-10-10 18:03:03 -04:00
|
|
|
|
challengeType: 1
|
2020-04-29 18:29:13 +08:00
|
|
|
|
videoUrl: 'https://scrimba.com/c/cEPrGTN'
|
|
|
|
|
forumTopicId: 16800
|
2021-01-13 03:31:00 +01:00
|
|
|
|
dashedName: comparisons-with-the-logical-or-operator
|
2018-10-10 18:03:03 -04:00
|
|
|
|
---
|
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
# --description--
|
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
只要<dfn>逻辑或</dfn>运算符(`||`)两边的任何一个<dfn>运算</dfn>的结果是 `true`,则返回 `true`。 否则,返回 `false`。
|
2020-12-16 00:37:30 -07:00
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
<dfn>逻辑或</dfn>运算符由两个竖线(`||`)组成。 这个按键位于退格键和回车键之间。
|
2020-12-16 00:37:30 -07:00
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
下面这样的语句你应该很熟悉:
|
2020-04-29 18:29:13 +08:00
|
|
|
|
|
|
|
|
|
```js
|
|
|
|
|
if (num > 10) {
|
|
|
|
|
return "No";
|
|
|
|
|
}
|
|
|
|
|
if (num < 5) {
|
|
|
|
|
return "No";
|
|
|
|
|
}
|
|
|
|
|
return "Yes";
|
|
|
|
|
```
|
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
只有当 `num` 大于等于 `5` 或小于等于 `10` 时,函数才返回 `Yes`。 相同的逻辑可以简写成:
|
2020-04-29 18:29:13 +08:00
|
|
|
|
|
|
|
|
|
```js
|
|
|
|
|
if (num > 10 || num < 5) {
|
|
|
|
|
return "No";
|
|
|
|
|
}
|
|
|
|
|
return "Yes";
|
|
|
|
|
```
|
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
# --instructions--
|
|
|
|
|
|
2022-02-12 21:01:07 +05:30
|
|
|
|
请使用逻辑或运算符把两个 `if` 语句合并为一个语句,如果 `val` 不在 `10` 和 `20` 之间(包括不是 10 和 不是 20),返回 `Outside`。 否则,返回 `Inside`。
|
2020-12-16 00:37:30 -07:00
|
|
|
|
|
|
|
|
|
# --hints--
|
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
应该使用一次 `||` 操作符。
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
```js
|
|
|
|
|
assert(code.match(/\|\|/g).length === 1);
|
2018-10-10 18:03:03 -04:00
|
|
|
|
```
|
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
应该只有一个 `if` 表达式。
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
```js
|
|
|
|
|
assert(code.match(/if/g).length === 1);
|
|
|
|
|
```
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
`testLogicalOr(0)` 应该返回字符串 `Outside`
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
|
|
|
|
```js
|
2020-12-16 00:37:30 -07:00
|
|
|
|
assert(testLogicalOr(0) === 'Outside');
|
|
|
|
|
```
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
`testLogicalOr(9)` 应该返回字符串 `Outside`
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
```js
|
|
|
|
|
assert(testLogicalOr(9) === 'Outside');
|
|
|
|
|
```
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
`testLogicalOr(10)` 应该返回字符串 `Inside`
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
```js
|
|
|
|
|
assert(testLogicalOr(10) === 'Inside');
|
2018-10-10 18:03:03 -04:00
|
|
|
|
```
|
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
`testLogicalOr(15)` 应该返回字符串 `Inside`
|
2020-12-16 00:37:30 -07:00
|
|
|
|
|
|
|
|
|
```js
|
|
|
|
|
assert(testLogicalOr(15) === 'Inside');
|
|
|
|
|
```
|
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
`testLogicalOr(19)` 应该返回字符串 `Inside`
|
2020-12-16 00:37:30 -07:00
|
|
|
|
|
|
|
|
|
```js
|
|
|
|
|
assert(testLogicalOr(19) === 'Inside');
|
|
|
|
|
```
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
`testLogicalOr(20)` 应该返回字符串 `Inside`
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
```js
|
|
|
|
|
assert(testLogicalOr(20) === 'Inside');
|
|
|
|
|
```
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
`testLogicalOr(21)` 应该返回字符串 `Outside`
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
```js
|
|
|
|
|
assert(testLogicalOr(21) === 'Outside');
|
|
|
|
|
```
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-03-14 21:20:39 -06:00
|
|
|
|
`testLogicalOr(25)` 应该返回字符串 `Outside`
|
2020-04-29 18:29:13 +08:00
|
|
|
|
|
2018-10-10 18:03:03 -04:00
|
|
|
|
```js
|
2020-12-16 00:37:30 -07:00
|
|
|
|
assert(testLogicalOr(25) === 'Outside');
|
2018-10-10 18:03:03 -04:00
|
|
|
|
```
|
2020-04-29 18:29:13 +08:00
|
|
|
|
|
2021-01-13 03:31:00 +01:00
|
|
|
|
# --seed--
|
|
|
|
|
|
|
|
|
|
## --seed-contents--
|
|
|
|
|
|
|
|
|
|
```js
|
|
|
|
|
function testLogicalOr(val) {
|
|
|
|
|
// Only change code below this line
|
|
|
|
|
|
|
|
|
|
if (val) {
|
|
|
|
|
return "Outside";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (val) {
|
|
|
|
|
return "Outside";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Only change code above this line
|
|
|
|
|
return "Inside";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
testLogicalOr(15);
|
|
|
|
|
```
|
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
# --solutions--
|
|
|
|
|
|
2021-01-13 03:31:00 +01:00
|
|
|
|
```js
|
|
|
|
|
function testLogicalOr(val) {
|
|
|
|
|
if (val < 10 || val > 20) {
|
|
|
|
|
return "Outside";
|
|
|
|
|
}
|
|
|
|
|
return "Inside";
|
|
|
|
|
}
|
|
|
|
|
```
|