zoukankan      html  css  js  c++  java
  • 前端面试之 判断 "true" == true 需要进行哪几步操作?

    1、首先是  "true"==true的结果为false

    2、为什么? 在转化不同数据类型时,相等或不等遵循以下规则:

    (1)如果有一个操作数是布尔值,则在比较相等之前先将布尔值转化为数值,即:true 为 1 ,false 为 0

    (2)如果有一个操作数是字符串,另一个操作数是数值,则在比较相等之前先将字符串转化为数值,即:"3" 为 3 ,"sfehf" 为 NaN

    (3)如果有一个操作数是对象 ,另一个不是对象,则调用对象的valueOf()方法(valueOf() 方法可返回 Boolean 对象的原始值),用得到的基本类型值按照前面的规则进行比较。

    3、因此,按照规则(1)和(2),转化结果为:NaN == 1 ,结果为false

    更多关于 == 以及 === 的详细请参考:

    https://segmentfault.com/a/1190000000650129

  • 相关阅读:
    001 windows下如何生成公钥和私钥
    函数基础
    各种推导式
    MySQL误删数据
    kafka 学习笔记
    Nginx 功能
    Nginx 到底可以做什么
    Nginx 到底可以做什么
    Shell的18条常用命令整理
    超详细 Nginx 极简教程
  • 原文地址:https://www.cnblogs.com/max-tlp/p/7050452.html
Copyright © 2011-2022 走看看