• 每日一题js


    #<100 return后面不能换行 箭头函数返回对象需要包裹,防止对象的{}与函数{}冲突

    1. let nums=(a,b)=>{
    2. if(a>b)
    3. console.log('a is bigger')
    4. else
    5. console.log('b is bigger')
    6. return
    7. a+b
    8. }
    9. console.log(nums(3,2));
    10. console.log(nums(1,2));
    11. /*return后面不能换行*/ // a is bigger undefined ;b is bigger undefined
    12. const user = { name: "Lydia", age: 21 }
    13. const getUser = user => { name: user.name, age: user.age }
    14. console.log(getUser(user))
    15. /*返回对象 应该用小括号包起来*/ //Uncaught SyntaxError: Unexpected token ':'

    #101.Truthy、Falsy与true、false的区别(详见文末@#101)

    1. const one = (false || {} || null);
    2. const two = (null || false || "");
    3. const three = ([] || 0 || true);
    4. console.log(one, two, three);
    5. //{} "" [] 条件判断时除了Falsy全部转换为真值。Falsy有 false, 0、-0, '', undefined, null, NaN, document.all

    二、相关解释

    @#101 javascript中的任何对象都还隐含一个boolean值,这便是大家所说的truthy和falsy原则.

    truthy和falsy值

    隐含有false属性的: false 0(零)   “”(空串)   null   undefined   NaN

    除此之外的其他值隐含的均是true属性,像“0”(字符串)、“false”(字符串),还有空函数、空数组、空对象这些比较容易搞混的,都是能返回true。

    关于falsy值之间的比较,分为以下几种情况

    1.false、0、空串三者是可以互等的

    var c = (false == 0); // true var d = (false == ""); // true var e = (0 == ""); // true

    2.null和undefined可以互等,但是不与其他几种相等

    var f = (null == false); // false var g = (null == null); // true var h = (undefined == undefined); // true var i = (undefined == null); // true

    3.NaN,不与其他任何值相等,甚至与自己都不等

    var j = (NaN == null); // false var k = (NaN == NaN); // false

    javascript使用typeof(NaN),返回值是number,也就是说这个NaN还是个number类型。还好js提供了一个函数inNaN()用来判断一个变量是否是数字 

    var l = (false == 0); // true var m = (false === 0); // false

    空数组,例如var a = [];是返回true的,但也得看你怎么用,区别:if ( [] ) { // 这里的代码将会执行 } if ( [] == true ) { // 这里的代码不会执行 } if ( [] == false ) { // 这里的代码将会执行 }

  • 相关阅读:
    CH9101国产USB转异步串口芯片兼容替代PL2303GC/PL2303HXD/FT230X/FT232RQ/CY7C65213
    Qt编写物联网管理平台37-逻辑设计
    【echarts】12、echarts+vue2 - 柱状图
    JAVA【反射机制】
    Linux中通过什么命令可以过滤控制字符?
    算法训练与程序竞赛题目集合(L1)
    RestTemplate使用方法
    使用 AHK 在 VS Code 中根据上下文自动切换输入法状态
    go——并发编程
    【博客456】OVN (Open Virtual Network)实现三层网络平面连通性控制
  • 原文地址:https://blog.csdn.net/ANNENBERG/article/details/116587148