您的位置:首页 > Web前端 > JavaScript

javascript的数据类型and隐式转换

2017-12-06 15:38 525 查看
1.javascript的数据类型--6种

   这几种数据类型分别是Number、String、Boolean、Null、Undefined(5种基本的数据类型),另外一种复杂的数据类型是Object,之前一直以为复杂的数据类型还有Array,没想到一直都是错误的理解,typeof Array得到的值为Object,所以Array也是一种对象类型。

2.javascript中几种数据类型的转换

  (1).  +  号--理解为字符串的拼接

       "37"+7=377     

       应用:如果要把一个变量num转化为字符串,只需要num+""即可

  (2)    -  号--理解为两个数值的相减

       "37"-7=30

       应用:如果要把一个变量num转化为数字,只需要将num-0即可

 3.javascript中==与===的区别

  (1)  == 可以进行数据类型的转换 ,数据类型相同,比较同===

              数据类型不同,但是可以进行数据类型的转换

              "123"==123 
(等号两边一边是number一边是string,会将string转换成number)

               0==false 
 (一边类型是boolean,不管另外一边类型是什么,都先将boolean转换成number类型)

               null==undefined

               [1,2]==[1,2]      //false,数组实际上也是一个对象,对象是引用的比较

               my Object()==my Object()  //false

   总结: null==undefined //返回TRUE

               number==string  string类型转换成number类型

               boolean==?  boolean转换成number类型

               object==number|string   尝试将对象转换成基本类型

  (2) ===必须是数据类型相同,类型不同,返回FALSE

             数据类型相同,null===null   

                                      undefined===undefined

                                      NaN=/NaN  (NaN是一个特例,和它本身也不能比较,==和===均为false)    

                                      my Object()=/my Object()  (对象虽然类型相同,但是不是进行数值的比较,而是引用的比较,==和===均为false)

  注:只有在这种情况下,两个对象才可能相等,定义一个变量var x=new Object();console.log(x===x);这种情况下,输出为true....

                                      

                                      

    
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript