首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏快乐阿超

    truthy

    if (42) if ("foo") if (new Date()) if (-42) if (3.14) if (-3.14) if (Infinity) if (-Infinity) 反之,我们也有Falsy 在 JavaScript 中只有 8 个 falsy 值。 false false 关键字 0 数值 zero -0 数值 负 zero 0n 当 BigInt 作为布尔值使用时, 遵从其作为数值的规则. 0n 是 falsy 值. null null - 缺少值 undefined undefined - 原始值 NaN NaN - 非数值 例子 JavaScript 中 falsy 值的例子 (在布尔值上下文中被转换为 undefined) if (0) if (0n) if (NaN) if ('') if ("") if (``) if (document.all) 逻辑与操作符 && 如果第一个对象(译注:原文如此)是 falsy

    45140编辑于 2022-08-21
  • 来自专栏walterlv - 吕毅的博客

    C# 重载条件逻辑运算符(&& 和 ||)

    "a 是 truthy" : "a 是 falsy"); Console.WriteLine(b ? "b 是 truthy" : "b 是 falsy"); Console.WriteLine(a & b); Console.WriteLine(a | b); Console.WriteLine(a truthy 和 falsy 刚刚的测试代码中,我们使用了 truthy 和 falsy 概念,而这是逻辑判断概念: 如果在逻辑判断中,对象与 true 等价,但其数值上并非 true(不等于 true ),那么称此对象为 truthy; 如果在逻辑判断中,对象与 false 等价,但其数值上并非 false(不等于 false),那么称此对象为 falsyFalsy?

    1.8K40发布于 2020-02-10
  • 来自专栏京程一灯

    如何删除 JavaScript 数组中的虚值[每日前端夜话0x55]

    Photo by Vincent van Zalinge on Unsplash 引用自 MDN: falsy(虚值)是在 Boolean 上下文中已认定可转换为‘假‘的值. falsy 有时写作 falsey 在 JavaScript 中有很多方法可以从数组中删除元素,但是从数组中删除所有虚值的最简单方法是什么? 为了回答这个问题,我们将仔细研究 truthy 与 falsy 值和类型强制转换。 ---- 算法说明 从数组中删除所有虚值。 代码: 1function bouncer(arr) { 2 // Use filter to remove falsy elements from arr. 3 let onlyTruthyValues 本文引用了 freeCodeCamp Basic Algorithm Scripting:Falsy Bouncer。

    15.8K20发布于 2019-05-06
  • 来自专栏JS菌

    图解 == 操作符规则和不同类型间转换规则

    首先获取原始值,然后转为 string 20190310234912.png 转为 boolean 常见的问题:哪些是 falsy 哪些是 truthy: ❌下面这些在 JS 中都为 falsy 除此之外的都是 falsy null ? falsy 0 ? falsy "" ? falsy NaN ? falsy 因此转换规则如下: undefined ? false null ?

    92520发布于 2019-04-10
  • 来自专栏达摩兵的技术空间

    js代码规范

    truthy - logTruthyFalsy([]); // truthy - logTruthyFalsy('0'); // truthy - logTruthyFalsy(false); // falsy - logTruthyFalsy(0); // falsy - logTruthyFalsy(undefined); // falsy - logTruthyFalsy(null); // falsy - logTruthyFalsy(NaN); // falsy - logTruthyFalsy(''); // falsy 20.

    11.5K30发布于 2018-08-28
  • 来自专栏JAVA相关

    前端工具方法整理

    data.note1 == "") {param.remark = "";} 第二种方案:在 JavaScript 中,if (param) 语句会根据 param 的值来判断其真假(truthy 或 falsy 在 JavaScript 中,以下值被视为“假”(falsy),即在条件判断中会被认为是 false:Falsy 值false: 布尔值 false。0: 数字零。-0: 负零。 if (value) { console.log(`${value} is truthy`); } else { console.log(`${value} is falsy `); }});输出false is falsy0 is falsy-0 is falsy0n is falsy is falsynull is falsyundefined is falsyNaN is falsy6.格式化字符串在 Java 中,String.format 和 MessageFormat 都可以用于格式化字符串,但它们的用法和适用场景有所不同。

    28300编辑于 2025-05-28
  • 来自专栏终身学习者

    JS 中为啥 ['1', '7', '11'].map(parseInt) 返回 [1, NaN, 3]

    真值(truthy) & 虚值(falsy) 以下是 JS 中一个简单的if-else语句: if (true) { // this always runs } else { // this if ("hello world") { console.log("Condition is truthy"); } else { console.log("Condition is falsy 所有值都是真值,除非它们被定义为 falsy (即除了 false,0,"",null,undefined 和 NaN 外)。 falsy(虚值)是在 Boolean 上下文中已认定可转换为‘假‘的值。 JS中的对象不是真值就是虚值。 令人困惑的是,这意味着字符串“false”,字符串“0”,空对象{}和空数组[]都是真的。 ) parseInt('11', 0); => 11 (radix is falsy) 现在一步一步解析开头的事例。

    5.8K30发布于 2019-07-02
  • 来自专栏404

    JS 真值

    所有值都是真值,除非它们被定义为 {{Glossary("Falsy", "falsy")}} (即, 除了false,0,“”,null,undefined和NaN 外)。

    39540编辑于 2022-04-25
  • 来自专栏Czy‘s Blog

    Js中的逻辑运算符

    描述 如果一个值可以被转换为true,那么这个值就是所谓的truthy,如果可以被转换为false,那么这个值就是所谓的falsy。 (some falsy expression) && (expr)短路计算的结果为假。 (some truthy expression) || (expr)短路计算的结果为真。 // false console.log("" && false); // "" console.log(false && ""); // false 寻找第一个falsy 的值 &&逻辑与运算符的一个很重要的用法就是寻找第一个falsy的值,并利用短路运算可以避免一些异常。 // 寻找第一个falsy的值 var val0 = 0, val1 = 1, val2 = 2; var result = val1 && val2 && val0; console.log(result

    3.3K20发布于 2020-12-02
  • 来自专栏喵喵学前端

    uni-app微信小程序相机组件二次拍照白屏问题的排查与解决

    显示临时拍摄的tempImage[建议在此处添加流程图:展示数据流转过程]问题根因让我们追踪一下完整的数据变化过程:第一次拍照流程:展开代码语言:TXTAI代码解释初始状态:picture:""//空字符串(falsy 修复后的完整流程:展开代码语言:TXTAI代码解释↓点击删除删除后状态:picture:""//✅空字符串(falsy)tempImage:""//✅已清空result:[]//✅已清空showCamera picture:""//仍为空tempImage:"wxfile://tmp_yyy.jpg"//新照片路径showCamera:false↓渲染逻辑判断v-if="picture"→false(空字符串是falsy 技术要点总结1.JavaScript中的Truthy和Falsy这是一个非常容易踩坑的知识点,在微信小程序开发中尤其需要注意:Falsy值(会被转换为false):false0""(空字符串)nullundefinedNaNTruthy 输出变量值验证v-if、v-show的判断结果总结这次bug修复让我深刻认识到,在uni-app微信小程序开发中,看似简单的状态管理也可能隐藏着陷阱:类型判断要谨慎:JavaScript的truthy/falsy

    26410编辑于 2025-11-11
  • 来自专栏京程一灯

    JavaScript空值合并运算符

    空值合并运算符接受虚值(Falsy values[5])。 ? 使用 JavaScript 空值合并运算符 让我们看一些例子。请记住,JavaScript 的空值合并运算符将遵循 ?? undefined: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/undefined [5] Falsy values: https://guide.freecodecamp.org/javascript/falsy-values/ [6] 逻辑或运算符: https://mariusschulz.com

    1.9K50发布于 2020-08-13
  • 来自专栏salesforce零基础学习

    Salesforce Javascript(三) 小结1

    Falsy 值 情况总结 针对Boolean布尔类型大家肯定都不陌生,布尔类型只有两个值,一个是true,也叫Truthy, 一个是false,也叫 Falsy。 下面整理一下所有的 Falsy的情况,除了以下的情况,便都是Truthy。 值 解释 false false关键字 0 数值 0 -0 在数值中分成 +0 、-0,-0也被代表false On 当 BigInt 作为布尔值使用时, 遵从其作为数值的规则. 0n 是 falsy

    73131发布于 2020-10-10
  • 来自专栏云前端

    在 Typescript 中使用 Array.filter(Boolean)

    stackoverflow.com/help/licensing */ /** See https://stackoverflow.com/a/51390763/1470607 */ type Falsy : any): Exclude<S, Falsy>[]; } 然后将其作为 include 项添加到 tsconfig 配置中即可: { "include": [ "lib.es5.d.ts

    1.2K20编辑于 2023-03-08
  • 来自专栏前端精读评论

    精读《Diff, AnyOf, IsUnion...》

    结合上面两个思考,本题作如下解答不难想到: type Falsy = '' | never | undefined | null | 0 | false | [] type AnyOf<T extends readonly any[]> = T extends Falsy[] ? false : true 但会遇到这个测试用例没通过: AnyOf<[0, '', false, [], {}]> 如果此时把 {} 补在 Falsy 里,会发现除了这个 case 外,其他判断都挂了 extends {} 结果为真,因为 {} 并不表示空对象,而是表示所有对象类型,所以我们要把它换成 Record<PropertyKey, never>,以锁定空对象: // 本题答案 type Falsy null | 0 | false | [] | Record<PropertyKey, never> type AnyOf<T extends readonly any[]> = T extends Falsy

    47530编辑于 2022-11-21
  • 来自专栏海怪的编程小屋

    前端单测,我们应该测什么?

    ', 'Giraffe']) }) 有了上面的测试用例,我们的覆盖情况如下所示(高亮部分为覆盖部分): 现在,让我们来看看还没被覆盖的那部分,然后发现还有两种 Use Case 还没支持: 传入 falsy 值,则返回空数组 传入非 falsy 值且不是数组时,返回一个数组,其中包含的输入值 现在再来把测试用例都加上,然后再来看覆盖情况: test('传入 falsy 值,则返回空数组', () => { test(`传入非 falsy 值也不是数组时,返回一个数组,其中包含的输入值`, () => { expect(arrayify('Leopard')).toEqual(['Leopard']) Boolean) } } 我们用这两个用例来实现 100% 的代码覆盖: 输入数组,返回数组 输入非数组,返回数组,其中包含输入内容 如果我们来思考一下真实的使用用例,会发现少了一种 Case: 输入 Falsy 然而,我们的测试依旧是可以通过的,但所有依赖 “输入 falsy 值” 的这个 Case 的代码就都挂了。 要对使用用例做测试,而不是代码 如何应用到 React 代码的测试?

    1K20编辑于 2022-05-09
  • 来自专栏全栈修仙之路

    TypeScript 空值合并运算符(??)

    fee 的值是 0,在这种情况下,页面上将显示 “尚未开通订阅”,这是因为 0 是一个 falsy 值。那如何解决这个问题呢? 与逻辑或(||)操作符不同,逻辑或会在左操作数为 falsy 值时返回右侧操作数。也就是说,如果你使用 || 来为某些变量设置默认的值时,你可能会遇到意料之外的行为。 比如为 falsy 值(’’、NaN 或 0)时。 下面我们来看一个具体的例子: const foo = null ??

    4.2K10发布于 2020-03-18
  • 来自专栏前端黑板报

    17 - JavaScript :类型转换​

    但是,JavaScript 还会把特定的值视为 truthy 和 falsy。除了 0 、undefined 、""、false 和 NaN 其它值都为 truthy。 我们可以使用取反操作符 ! 如果你需要转换 boolean 类型同时保持对应的 truthy 或 falsy 使用 !!。

    52720编辑于 2022-12-01
  • 来自专栏前端有的玩

    Typescript基本类型

    在ts中,使用boolean来表示布尔类型 const isTrue: boolean = true 「注意」ts中boolean类型只有两个值,true和false,在js中,除这两个值之外,其他Falsy // 报错 Type '0' is not assignable to type 'boolean' const result: boolean = 0 Falsy值包括 false, undefined

    55860发布于 2021-07-27
  • 来自专栏前端达人

    4个优雅的 ES2020 运算符使用技巧

    (x = y); 三、逻辑或分配(|| =) 此逻辑赋值运算符仅在左侧表达式为 falsy值时才赋值。 Falsy值与null有所不同,因为falsy值可以是任何一种值:undefined,null,空字符串(双引号""、单引号’’、反引号``),NaN,0。

    1.6K30发布于 2021-06-16
  • 来自专栏分享技术

    JavaScript如何判断是否为null或undefined

    defaultValue;console.log(result); // 输出:''在这些情况下,该操作符分别返回0和'',因为它只检查null或undefined,而不是其他“falsy”值,比如0或 更适合提供默认值,因为它只在原始值为null或undefined时才回退到默认值,而不是在其他falsy值(如0、false或'')上回退。使用之前的例子但使用?? 在这些falsy值是有效且预期的情况下特别有用。

    1.7K20编辑于 2023-11-12
领券