JavaScript系列从入门到精通系列第十篇:JavaScript中的相等运算符与条件运算符

 

文章目录

一:相等运算符

1:==

2:!=

3:===与!==

(一):===

(二):!==

二:条件运算符 

1:语法

2:使用

3:容易挨打的写法


一:相等运算符

        用于比较两个值是否相等,相等等于true,不相等返回false。

1:==

        使用==判断两个值是否相等,一个等号是赋值。

console.log("1" == 1);//true

        字符串的1和数值的1是相等的,如果值的类型不同,会自动进行类型转化。将其转换为相同的类型,然后再比较大小。

console.log(true == "1");//true

        这样就会将字符串转换为布尔值再进行比较。true == true 

console.log(null == 0);//false

        这个是个特殊情况,并没有把null转为Number。所以是false,另外undefined衍生自null,这两个做比较的时候会true;

console.log(null == undefined)//true

        NaN不和任何值相等,包括他本身。

console.log(NaN == NaN);//false

        如何判断是否是NaN,使用isNaN()函数

var b = NaN;
console.log(isNaN(b));//true

2:!=

        用法和==相似,结果相反即可。

console.log(10 != 5);//trueconsole.log(10 != 10);//falseconsole.log("abcd" != "abcd");//falseconsole.log("1" != 1);//false

3:===与!==

(一):===

            判断两个值是否相等,不同的是不会进行类型转换,如果类型不一致,直接返回false。

console.log("123" === 123);//falseconsole.log("123" == 123);//true
console.log(null === undefined);//falseconsole.log(null == undefined);//true

(二):!==

console.log(1 != "1");//false
console.log(1 !== "1");//true

二:条件运算符 

1:语法

        条件表达式?语句1:语句2;

        如果条件表达式为true走语句1并返回结果。如果该值为false,返回执行语句2并返回结果。

2:使用

var a = 10;
var b = 20;
a > b ? alert("a大"):alert("b大");
var max = a > b? a : b;

3:容易挨打的写法

"hello" ? alert("语句1"):alert("语句2");

        条件表达式不是布尔值,会进行转换为布尔值。然后再进行执行。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/144330.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

No151.精选前端面试题,享受每天的挑战和学习

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…

51单片机音乐闹钟秒表倒计时整点报时多功能电子钟万年历数码管显示( proteus仿真+程序+原理图+报告+讲解视频)

51单片机音乐闹钟秒表倒计时整点报时多功能电子钟万年历数码管显示( proteus仿真程序原理图报告讲解视频) 讲解视频1.主要功能:2.仿真3. 程序代码4.原理图5. 设计报告6. 设计资料内容清单 51单片机音乐闹钟秒表倒计时整点报时多功能电子钟万年历数码管显…

最新AI智能写作系统ChatGPT源码/支持GPT4.0+GPT联网提问/支持ai绘画Midjourney+Prompt+MJ以图生图+思维导图生成

一、AI创作系统 SparkAi系统是基于很火的GPT提问进行开发的Ai智能问答系统。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作ChatGPT系统?小编这里写一个详细图文教程吧&#x…

多维时序 | MATLAB实现PSO-BP多变量时间序列预测(粒子群优化BP神经网络)

多维时序 | MATLAB实现PSO-BP多变量时间序列预测(粒子群优化BP神经网络) 目录 多维时序 | MATLAB实现PSO-BP多变量时间序列预测(粒子群优化BP神经网络)效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现PSO-BP粒子群优化BP神经网络多变量时间序列预测&#xff…

《YOLOv5:从入门到实战》报错解决 专栏答疑

前言:Hello大家好,我是小哥谈。《YOLOv5:从入门到实战》专栏上线后,部分同学在学习过程中提出了一些问题,笔者相信这些问题其他同学也有可能遇到。为了让大家可以更好地学习本专栏内容,笔者特意推出了该篇专…

QT6.5.2编译PostgreSql驱动

一、环境 1、操作系统:win11 2、qt版本:6.5.2 3、PostgreSql版本:14.9 二、下载qbase源码 1、下载地址:https://github.com/qt/qtbase/tree/6.5.2 将下载的源码文件解压指定的的目录,找到src/plugins/sqldrivers根据自己的实…

2023年【安徽省安全员C证】模拟考试题及安徽省安全员C证实操考试视频

题库来源:安全生产模拟考试一点通公众号小程序 2023年【安徽省安全员C证】模拟考试题及安徽省安全员C证实操考试视频,包含安徽省安全员C证模拟考试题答案和解析及安徽省安全员C证实操考试视频练习。安全生产模拟考试一点通结合国家安徽省安全员C证考试最…

Three.js加载360全景图片/视频

Three.js加载360全景图片/视频 效果 原理 将全景图片/视频作为texture引入到three.js场景中将贴图与球形网格模型融合,将球模型当做成环境容器使用处理视频时需要以dom为载体,加载与控制视频动作每次渲染时更新当前texture,以达到视频播放效…

Jenkins 权限管理

关于Role-based Authorization Strategy 使用Jenkins自身的权限管理过于粗糙,无法对单个、一类项目做管理,我们可以使用 Role-based Authorization Strategy插件来管理项目、角色。 首先安装该插件:在Jenkins查看该插件有无安装 在Jenkins-…

基于css变量轻松实现网站的主题切换功能

我们经常看到一些网站都有主题切换,例如vue官方文档。那他是怎么实现的呢? 检查元素,发现点击切换时,html元素会动态的添加和移除一个class:dark,然后页面主题色就变了。仔细想想,这要是放在以前&#xff0…

[ruby on rails] postgres sql explain 优化

一、查看执行计划 sql User.all.to_sql # 不会实际执行查询 puts ActiveRecord::Base.connection.explain(sql)# 会实际执行查询,再列出计划 User.all.explain# 会实际执行查询,再列出计划 ActiveRecord::Base.connection.execute(EXPLAIN (ANALYZE, V…

ToDoList使用自定义事件传值

MyTop与MyFooter与App之间传递数据涉及到的就是子给父传递数据,MyList和MyItem与App涉及到爷孙传递数据。 之前的MyTop是使用props接收App传值,然后再在methods里面调用,现在使用自定义事件来处理子组件和父组件之间传递数据。 图是之前的…

Excel技巧之【锁定工作簿】

Excel工作簿是Excel工作区中一个或多个工作表的集合,我们知道Excel可以设置锁定工作表,防止意外或被他人修改,但可能有小伙伴不知道,Excel工作簿也同样可以设置锁定,防止更改。 那工作簿锁定后会怎么样呢?…

【CTFHUB】SSRF绕过方法之靶场实践(二)

SSRF POST请求 提示信息: 这次是发一个HTTP POST请求.对了.ssrf是用php的curl实现的.并且会跟踪302跳转.加油吧骚年 首先测试了http的服务请求,出现对话框 输入数值后提示:只能接受来自127.0.0.1的请求 右键查看源码发现key值 通过file协…

由union引发的Struct占用内存空间和大小端问题的思考

1. 背景 在看Lua源码的时候,很多地方都用到了union(共用体或者联合体),在定义lua类型的时候,为了以一个结构来包含所有的数据类型,设计了一个 TValue类型,TValue类型最终关联到 Value类型&#…

二、C++项目:仿muduo库实现并发服务器之时间轮的设计

文章目录 一、为什么要设计时间轮?(一)简单的秒级定时任务实现:(二)Linux提供给我们的定时器:1.原型2.例子 二、时间轮(一)思想(一)代码 一、为什…

【C++】C++的IO流

C的IO流 一、C语言的输入与输出二、流是什么三、CIO流1、C标准IO流2、C文件IO流3、stringstream的简单介绍 一、C语言的输入与输出 C语言中我们用到的最频繁的输入输出方式就是scanf ()与printf()。 scanf(): 从标准输入设备(键盘)读取数据,并将值存放在变量中。p…

raw图片处理软件:DxO PhotoLab 6 mac中文版支持相机格式

DxO PhotoLab 6 mac是一款专业的RAW图片处理软件,适用于Mac操作系统。它具有先进的图像处理技术和直观易用的界面,可帮助用户轻松地将RAW格式的照片转换为高质量的JPEG或TIFF图像。 DxO PhotoLab 6支持多种相机品牌的RAW格式,包括佳能、尼康、…

Rust之自动化测试(二):控制测试如何运行

开发环境 Windows 10Rust 1.72.1 VS Code 1.82.2 项目工程 这里继续沿用上次工程rust-demo 控制测试如何运行 正如cargo run编译您的代码,然后运行生成的二进制文件一样,cargo test在测试模式下编译您的代码,然后运行生成的测试二进制文件…

马尔萨斯《人口原理》读后

200 多年前的书,很多人都说旧的东西过时了,但我觉得它只是被修正了,内核并不过时。毕竟,静态存量分析这本身就不符合现实,用现在的话说,建模就错了,但马尔萨斯的理论核心并不仅仅是一个模型&…