JavaScript 中的逻辑运算符

2023-05-28 0 758

JavaScript 有 3 个方式论操作符

!:方式论非&&:方式论与||:方式论或

方式论非

方式论非操作符!检查和一二项是却是。 换言之,!v === false假如 v是下列 7 二项:

false00n:0 做为BigInt :空数组nullundefinedNaN
// Falsy values means `!v === true`!false; // true!0; // true!; // true!undefined; // true!null; // true!Number(abc); // true// All other values are “truthy”, meaning `!v === false`!1; // false!({}); // false!({ valueOf: () => 0 }); // false! ; // false

not 操作符常常回到两个常量,Deoria || 和 &&,切换值的常见方式 v 常量是采用方式论非操作符三次:

// Convert `v` to a boolean!!v;

方式论或

方式论或操作符 || 对 2 二项展开演算,假如最少有一二项是谓词,则回到两个谓词。

// True if `a` or `b` is truthy. Will only be `false` if// both `a` and `b` are falsy.!!(a || b);

方式论或操作符最常见于 if 执行语句 if 假如多个条件之一为真,则阻止。 但是,方式论或操作符 不一定 回到常量:

假如 a 是真实的, (a || b) === a假如 a 是假的, (a || b) === b

这与多个 or 操作符一起工作: a || b || c || d 回到最左边的真实值。 因此方式论或通常见于默认值:

const defaultNumReps = 2;function repeat(str, numReps) { // If `numReps` is null, undefined, or 0, this sets // `numReps` to the default value `2` numReps = numReps || defaultNumReps; let ret = ; for (let i = 0; i < numReps; ++i) { ret += str; } return ret;}

方式论与

方式论与操作符 && 对 2 二项展开演算,并回到 falsy,假如最少有一二项是假的:

// Only true if both `a` and `b` are truthy.!!(a && b);

方式论与操作符最常见于 if 执行语句 if 假如多个条件都为真,则阻塞。 但是,与方式论或操作符一样,方式论与操作符不一定回到常量:

假如 a 是假的 (a && b) === a假如 a 是真实的 (a && b) === b

给定两个由多个方式论和操作符组成的链 a && b && c && d,JavaScript 回到最左边的假值。

举报/反馈

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务