一个=是赋值,不是等于的意思。
两个==才是等于的意思。
且两个==是值相等,类型可以不相同。
所以,123=="123"的结果是true。
而三个===是等同于的意思,除了要值相等,类型也要相同。
所以,123==="123"的结果是false,因为123的类型时number,而"123"的类型是string。
而123===123或"123"==="123"的结果都是true。
下图是一个例子:
==用于一般比较,===用于严格比较,==在比较的时候可以转换数据类型,===严格比较,只要类型不匹配就返回flase。
举例说明:
"1" == true类型不同,"=="将先做类型转换,把true转换为1,即为 "1" == 1;此时,类型仍不同,继续进行类型转换,把"1"转换为1,即为 1 == 1。
1.如果比较:"1" === true 左侧为字符型,右侧为bool布尔型或int数值型,左右两侧类型不同,结果为false;
2.如果比较: 1 === 1 左侧为int数值型,右侧为int数值型,左右两侧类型相同,数值大小也相同,结果为true;
3.如果比较: 1 === 2 左侧为int数值型,右侧为int数值型,左右两侧类型相同,但数值大小不同,结果为false。
扩展资料:
JavaScript脚本语言具有以下特点:
1.脚本语言。JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。
2.基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。
3.简单。JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语言,其设计简单紧凑。
4.动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。
5.跨平台性。JavaScript脚本语言不依赖于操作系统,仅需要浏览器的支持。
参考资料:百度百科:js