javascript等号运算符使用详解

 更新时间:2015年04月16日 08:49:02   投稿:hebedich  
在JavaScript中,等号由双等号(==)表示,当且仅当两个运算数相等时,它返回true。今天我们就来详细探讨下等号运算符的问题,并附上等号运算符和全等号运算符的区别分析。
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

本章节介绍一下javascript中等号运算符的用法,需要的朋友可以做一下参考。

等号运算符最为基本的用法就是比较两个运算数是否相等,看如下代码实例:

复制代码 代码如下:

var a=2,b=2;
console.log(a==b);

如果两个操作数相等,那么返回值就是true,否则返回false。
上面是最为基本的用法,下面再来介绍一下它相对比较特殊的几种情况。

复制代码 代码如下:

var str="5";
var num=5;
console.log(str==num);

上面的代码返回值是true。

不少朋友可能会有疑问,一个是字符串,一个是数值类型,怎么返回值是true,当然这在c#或者java肯定是错误的,但是在js中这一切都不是问题,会进行隐式数据类型转换,字符串会尝试转换为数字。
再来看一段代码实例:

复制代码 代码如下:

console.log(true==1);

上面的代码也会返回true,因为true也会进行隐式转换,它将会被转换为1,false将会被转换为false。
下面再看一段代码实例:

复制代码 代码如下:

var obj={
  valueOf:function(){return 10}
}
console.log(obj==10);

一个对象竟然可以和一个数字直接量比较大小,并且返回值是true。
这是因为对象会首先调用valueOf()方法,如果没有此方法则尝试调用toString()方法。

javascript的两个等号和三个等号的区别:

在javascript代码经常看到三个等号和两个等号的使用,下面就介绍一下它们两者的区别是什么。
代码实例:
实例一:

复制代码 代码如下:

console.log(0=="");
console.log(0==false);
console.log(""==false);

实例二:

复制代码 代码如下:

console.log(0==="");
console.log(0===false);
console.log(""===false);

上面你的代码演示了两个运算符的,下面介绍一下它们两者的区别。

三个等号全等运算符:

既然是全等运算符,那么两个运算数必须完全一样才能够相等,具体比较规则如下:

1.如果两个操作是值类型,那么两个操作数必须完全相等才会相等。
2.如果是引用类型,两个操作数必须指向同一个对象才会相等。

两个等号运算符:

这个运算符比较博爱一些,在比较的时候如果两个操作数的类型不同,会进行类型转换,具体规则如下:

1.如果是数据类型相同的值类型,那么比较规则和全等运算符相同。
2.如果两个操作数类型相同,那么它们也是有可能相同的:
a:如果一个是null、一个是undefined,那么两个是相同的。
b:如果一个是字符串,一个是数值,把字符串转换成数值再进行比较。
c:如果任一值是true,把它转换成1再比较,如果任一值是false,把它转换成0再比较。
d:如果一个是对象,另一个是数值或字符串,把对象转换成基础类型的值再比较。对象转换成基础类型,利用它的toString或者valueOf方法。

以上就是本文的全部内容了,希望大家能够喜欢。

相关文章

  • layui获取选中行数据的实例讲解

    layui获取选中行数据的实例讲解

    今天小编就为大家分享一篇layui获取选中行数据的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-08-08
  • disable-devtool禁用web开发者工具保护网页源码

    disable-devtool禁用web开发者工具保护网页源码

    这篇文章主要为大家介绍了disable-devtool禁用web开发者工具保护网页源码的使用,防止源码泄露保护网站源码的最佳解决方案,一行代码就可以搞定,有需要的可以学习参考下
    2023-11-11
  • JavaScript cookie与session的使用及区别深入探究

    JavaScript cookie与session的使用及区别深入探究

    这篇文章主要介绍了Java中Cookie和Session详解,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-10-10
  • 理解javascript中的严格模式

    理解javascript中的严格模式

    这篇文章主要帮助大家理解javascript中的严格模式,何为严格模式,如何启用严格模式,感兴趣的小伙伴们可以参考一下
    2016-02-02
  • uniapp微信小程序获取当前定位城市信息的实例代码

    uniapp微信小程序获取当前定位城市信息的实例代码

    因为uniapp官网文档的定位功能,只能提供经纬度,如果要获取当前具体的位置信息,必须要调取官方的地图方法,然后在地图上选点,下面这篇文章主要给大家介绍了关于uniapp微信小程序获取当前定位城市信息的相关资料,需要的朋友可以参考下
    2022-08-08
  • 微信公众号平台接口开发 菜单管理的实现

    微信公众号平台接口开发 菜单管理的实现

    这篇文章主要介绍了微信公众号平台接口开发 菜单管理的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • javascript 单例模式详解及简单实例

    javascript 单例模式详解及简单实例

    这篇文章主要介绍了javascript 单例模式详解及简单实例的相关资料,需要的朋友可以参考下
    2017-02-02
  • js日历功能对象

    js日历功能对象

    问题产生需求:做OA时弄到 备忘这个功能,想以日历的形式展现
    2012-01-01
  • 浅谈js中调用函数时加不加括号的问题

    浅谈js中调用函数时加不加括号的问题

    下面小编就为大家带来一篇浅谈js中调用函数时加不加括号的问题 。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-07-07
  • javascript实现复制与粘贴操作实例

    javascript实现复制与粘贴操作实例

    这篇文章主要介绍了javascript实现复制与粘贴操作,以实例形式讲述了javascript实现复制与粘贴操作的实现方法,需要的朋友可以参考下
    2014-10-10

最新评论

?


http://www.vxiaotou.com