• JS的双等和三等的区别


      在JS会碰到一个奇怪的运算符"===",之前学JAVA和C语言,只有"==",JS冒出个"===",挺奇怪的,遂google之...

      在JS中"=="和"==="是都存在的,他们都是判断两端的表达式是否相同,但是有一点不一样。

      因为在JAVA和C这中强类型语言中,每一个变量使用前都得必须先被声明并且指定类型,所以说变量和变量之间的类型是否相等,就不需要开发者去判断了,编译器就可以完成此任务,但是像JS这个弱语言,我可以突然半路冒出个abc变量,而这个变量又不用提前声明,而且可以存放任意类型的的值,这就比较变态了,所以说两个变量进行比较的时候,由于JS的特性,是可以考虑先比较类型,再比较值的,这就是"==="的作用,详情如下:

      "=="就代表会先把两端的变量试图转换成相同类型,然后再比较;"==="就代表会直接去比较类型是否相同,如果类型相同则继续比较值是否相同。

    举个例子:
     
    当Integer的1和String的"1",进行==比较的时候,两端的变量会先转换成相同类型,再去进行值得比较,有点JAVA里面的equals的意思;当进行===进行比较的时候,两端的变量会先进行类型之间的比较,
    如果类型不相等,直接返回false。

      

    再举个例子:

      

     当比较的两个对象是Object类型的时候,==和===的效果是一样的,因为两个不同对象之间的值是无法直接进行比较的,也是无法相互转换的,So,两个比较全为false.

  • 相关阅读:
    Python 认识元组
    Python 认识字典
    Python 字符串中常见的一些方法续
    python 打印 A ~ Z
    Python3的print怎么让它不换行
    Python 中的 lstrip、rstrip、strip
    Python判断一个字符串是否包含指定字符串的方法
    Python 字符串中常见的一些方法
    Python 认识字符串
    苹果电脑MacbookPro双开微信!
  • 原文地址:https://www.cnblogs.com/WreckBear/p/5922943.html
Copyright © 2020-2023  润新知