首页 > 试题广场 >

执行下列选项的程序,输出结果不是undefined的是()

[单选题]

执行下列选项的程序,输出结果不是undefined的是()


  • function fn(a,b){

    console.log(b);

    }
    fn(1);
  • console.log(undefined + 1);
  • var arr = [];

    arr.length = 2;

    arr[0] = 1;

    console.log(arr[1]);

  • function fun(){}

    console.log(fun());

考点:undefined隐式转换成Number类型值是啥

    1)Number(undefined) 结果是NaN,所以NaN+1 = NaN
    2)Number(null) 结果是0
    3)Number('a')结果是NaN
    4)  Number('')结果是0
    5)  Number(true)结果是1
    6)  Number(false)结果是0
    7)  Number([])结果是0
    8)  Number({})结果是NaN
发表于 2022-01-04 16:37:09 回复(4)
NaN在javascript中为“非法数值”,但数据类型依旧是数值类型,typeof(NAN)返回number。undefined在javascript中为“未定义”,强制转换为数值类型会返回NaN,所以undefined + 1会返回NaN。
发表于 2021-12-10 19:12:11 回复(0)
一元+操作符相当于Number()函数,会将undefined转化为数字,如果转化不了,那么就是NAN,所以会变为NAN+1 == NAN;结果就是NAN
发表于 2021-12-12 18:42:30 回复(1)
函数没返回值时默认返回undefine
发表于 2022-04-06 14:17:16 回复(0)
有没有大佬解释下D是为什么呀
发表于 2022-02-09 14:48:21 回复(2)