美文网首页
10.27打卡

10.27打卡

作者: kathyever | 来源:发表于2018-10-27 18:10 被阅读0次

    Q: 下面会输出什么?

    console.log(null == undefined)
    console.log(null === undefined)
    他们两者有什么区别,该如何解释他们两者
    
    
    console.log(null == undefined)
    true
    console.log(null === undefined)
    false
    

    ”==”与”===”一个是判断值是否相等,一个是判断值及类型是否完全相等。

    Q: 考虑下面输出

    var a = { x: 1}
    var b = [1]
    typeof a
    typeof b
    
    

    思考,该如何判断变量是object 还是array呢?(在后面的章节会知晓)

    思考题:我们如何知道的执行环境是严格模式?(后续章节会知晓)

    打卡时间:14:00

    数据类型

    Undefined类型

    如果一个变量未被初始化那么会自动被赋予Undefined值。所以当typeof操作符返回“Undefined”值的时候,我们就知道被检测的变量还没有被声明,而不是尚未初始化。

    Null类型

    如果定义的变量准备在将来用于保存对象,那么最好将该变量初始化为null而不是其他值。这样只要检查null值就可以知道相应的变量是否已经保存了一个对象的引用。

    Boolean类型

    Boolean类型的自勉之true和false是区分大小写 。也就是说True和False(以及其他的混合大小写形式)都不是Boolean值,只是标识符。
    各种数据类型及其对应的转换规则


    QQ截图20181027170205.png

    例子:

    var message="hello world";
    if(message){
      alert("Value is true");
    }
    

    括号里面进行隐式转换,将其他类型的值转换成布尔值。
    假设一种场景,这个message的值是请求了接口以后才获得的,如果这个message有值,alert出来的值就显示,没有值就不显示

    Number类型

    NaN(Not a Number) 是个特殊的数值,用于表示一个本来要返回数值的操作数未返回数值的情况。在ECMAScript中,任何数值除以0都会返回NaN。而且NaN与任何值都不相等,包括NaN本身。

    针对此特点,ECMAScript定义了isNaN()函数。
    isNaN()在接受到一个值之后,会尝试将这个值转换为数值。某些不是数值的值会直接转换为数值,例如字符串“10”或Boolean值。任何不能被转换为数值的值都会导致这个函数返回true。
    Boolean值可true可以转换成数值1,所以函数会返回false。

    数值转换

    三个可以把非数值转换为数值:
    Number()
    parseInt()
    parseFloat()
    Number()可以用于任何数据类型,而另外两个函数则专门用于把字符串转换成数值。
    parseInt() 函数可解析一个字符串,并返回一个整数。
    parseFloat() 函数可解析一个字符串,并返回一个浮点数。

    String类型

    String类型表示由零或多个16位Unicode字符组成的字符序列,即字符串。可以由双引号(“”)或者单引号(‘’)表示。
    String类型包括一些特殊字符,叫“转义序列”。这些字符字面量可以出现在字符串中任意位置,切作为一个字符解析。


    image.png

    转换字符串:toString()方法后面还得了解一下。在第5章。

    相关文章

      网友评论

          本文标题:10.27打卡

          本文链接:https://www.haomeiwen.com/subject/wfartqtx.html