IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> 今日刷题(2022-5-8) - 类型转换必须解决 -> 正文阅读

[JavaScript知识库]今日刷题(2022-5-8) - 类型转换必须解决

题目1

下面结果为真的表达式是:()
A: null instanceof Object

B: null === undefined

C: null == undefined

D: NaN == NaN
  • 答案

    • C
  • 解析

    • A:

      • null instanceof Object ;// false
      • typeof null === ‘object’;// true
      • 同理
      • undefined instanceof Object ; //false
      • typeof undefined === ‘undefined’ //true
    • B,C

      • null 遇到二个等号( == ) 和 undefined 比较,无条件返回true
      • null 遇到三个等号( === ) 和undefined 比较,无条件返回false
    • D:

      • NaN 不与 任何值相等 包括自身

题目2

以下哪个语句打印出来的结果是falseA: alert(3 == true)

B: alert(2 == '2')

C: alert(null == undefined)

D: alert(isNaN('true'))
  • 答案

    • A
  • 解析

    • A: == 会隐式转换,二个都是基本数据类型比较,true转化为数字为1,然后3==1返回false

    • B: == 会隐式转换,二个都是基本数据类型比较,都转化为数字,字符串’2’ 转化为数字为2,所以 2 == 2返回为true

    • C: null 遇到2个等号(==) 和undefined 无条件返回true**(规定)**

    • D: isNaN的转换好像都是将参数通过**Number()**来进行转换,凡是Number不能转换的都返回NaN

      isNaN(123) //false
      isNaN(-1.23) //false
      isNaN(5-2) //false
      isNaN(0) //false
      isNaN('123') //false
      isNaN('Hello') //true
      isNaN('2005/12/12') //true
      isNaN('') //false
      isNaN(true) //false
      isNaN(undefined) //true
      isNaN('NaN') //true
      isNaN(NaN) //true
      isNaN(0 / 0) //true
      

总结下

  1. 只要是基本数据类型的==比较,都会转化为数值来进行比较

  2. 只要是引用数据类型基本数据类型的的比较,都会转化为字符串 然后 转化为 被比较的基本数据的类型再进行比较((除了引用数据类型和布尔值进行比较的时候是将二者转化为布尔值比较))

  3. (比如 对象和布尔值比较 )

    // 输出结果为false
    // 过程:  [ ]转换为字符串'',然后转换为数字0,true转换为数字1,所以为false
    [] == true; 
    
  4. (比如 对象和数字比较)

    // 输出结果为true
    // 过程: [1]转化为字符串'1' ,然后转化为数字1 然后数字1 和 1进行比较 ,返回true
    [1] == 1;  
    
  5. 具体可以看这个博主写的js中的一些隐式转换和总结

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-05-09 12:31:32  更:2022-05-09 12:33:25 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 23:29:56-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码