`

运算符

阅读更多
相等运算符(==):
如果操作数具有相同的类型,则判断其等同性,如果两个操作数的值相等,则返回true(相等),否则返回false(不相等).

如果操作数的类型不同,则按照这样的情况来判断:

l  null和undefined相等

l  其中一个是数字,另一个是字符串,则将字符串转换为数字,在做比较

l  其中一个是true,先转换成1(false则转换为0)在做比较

l  如果一个值是对象,另一个是数字/字符串,则将对象转换为原始值(通过toString()或者valueOf()方法)

l  其他情况,则直接返回false



等同运算符(===)

如果操作数的类型不同,则不进行值的判断,直接返回false

如果操作数的类型相同,分下列情况来判断:

l  都是数字的情况,如果值相同,则两者等同(有一个例外,就是NaN,NaN与其本身也不相等),否则不等同

l  都是字符串的情况,与其他程序设计语言一样,如果串的值不等,则不等同,否则等同

l  都是布尔值,且值均为true/false,则等同,否则不等同

l  如果两个操作数引用同一个对象(数组,函数),则两者完全等同,否则不等同

l  如果两个操作数均为null/undefined,则等同,否则不等同

备注:而!=不等和!==不等同,则与==/!==相反。因此,在JavaScript中,使用相等/等同,不等/不等同的时候,一定要注意类型的转换
分享到:
评论

相关推荐

    C++程序设计 运算符重载实验(一)

    ### C++程序设计 运算符重载实验(一) #### 概述 在C++程序设计中,运算符重载是一项重要的特性,它允许程序员重新定义预定义运算符的行为,以便于创建更加自然和直观的接口。本实验旨在帮助学习者掌握如何在...

    三元运算符2_Html文件_三元运算符_

    三元运算符,也称为条件运算符,是一种简洁的、基于条件的语法结构,它可以在一行代码中完成简单的条件判断和赋值操作。它的基本形式是:`条件 ? 表达式1 : 表达式2`。如果条件为真,那么表达式1的结果会被执行或...

    Verilog HDL 运算符 优先级

    Verilog HDL 运算符优先级详解 Verilog HDL 是一种基于事件驱动的硬件描述语言,用于设计和验证数字电路。Verilog HDL 运算符优先级是指在 Verilog HDL 中各种运算符的执行顺序和优先级,了解运算符优先级对编写...

    C语言各运算符优先级及函数大全

    赋值运算符包括赋值运算符=、除后赋值运算符/=、乘后赋值运算符*=、取模后赋值运算符%=、加后赋值运算符+=、减后赋值运算符-=、左移后赋值运算符、右移后赋值运算符>>=、按位与后赋值运算符&=、按位异或后赋值运算符...

    C++ 运算符优先级列表

    ### C++运算符优先级详解 #### 一、引言 在C++编程语言中,了解运算符的优先级对于正确地构造表达式至关重要。不同的运算符根据其优先级顺序来决定表达式的计算顺序,这直接影响到程序的执行结果。本篇文章将详细...

    C++作业实验-运算符重载

    在C++编程语言中,运算符重载是一项关键特性,允许我们为自定义类型赋予特定的运算符行为。本实验“C++作业实验-运算符重载”旨在深入理解这一概念,通过Visual Studio 2010开发环境进行实践。在这个实验中,我们将...

    运算符重载示例适用于新手

    运算符重载是C++语言中的一个重要特性,它允许我们为已有的运算符赋予新的含义,以便在自定义数据类型上使用。对于新手来说,理解并掌握运算符重载是进阶C++编程的关键步骤之一。这篇教程将深入探讨运算符重载的基本...

    详解C++编程中的单目运算符重载与双目运算符重载

    C++单目运算符重载 单目运算符只有一个操作数,如!a,-b,&c,*p,还有最常用的++i和–i等。重载单目运算符的方法与重载双目运算符的方法是类似的。但由于单目运算符只有一个操作数,因此运算符重载函数只有一个参数...

    C语言逻辑运算符和位运算符总结

    ### C语言逻辑运算符详解 #### 一、逻辑运算符 C语言中的逻辑运算符用于处理布尔值(真/假)或表示真假的整数值(通常0代表假,非0代表真)。这些运算符帮助程序员根据多个条件组合来决定程序流程。 **1. 逻辑与 ...

    使用C++实现矩阵运算(运算符重载)

    例如,我们可以通过重载"+"运算符来实现矩阵的相加,重载"-"运算符进行矩阵的相减,重载"*"运算符实现矩阵乘法。通过重载,我们可以保持代码的直观性,使得矩阵操作与原始的数学表达式更为接近。 实现矩阵类时,...

    asp运算符图片运算符图片

    例如,加法运算符"+"用于将两个数值相加,减法运算符"-"用于做减法,乘法运算符"*"用于乘法,除法运算符"/"用于除法,以及取模运算符 "%"用于求余数。例如,`var result = 5 + 3;`将返回8。 2. **赋值运算符**:...

    运算符优先级与结合性

    在C语言和C++中,运算符的优先级和结合性是编程时必须掌握的基本概念。运算符优先级决定了表达式中不同运算的计算顺序,而结合性则规定了具有相同优先级的运算符如何组合。 首先,让我们按照优先级从高到低逐个解析...

    C语言中运算符的优先级和结合律

    C语言中运算符的优先级和结合律 C语言中运算符的优先级和结合律是决定复合表达式中操作数的结合方式的两个重要概念。运算符的优先级决定了操作数的结合方式,当复合表达式中的运算符的优先级不同时,操作数的结合...

    复数类加减法运算符重载成员函数

    在C++编程语言中,运算符重载是赋予运算符新的功能或意义,使其能用于特定自定义数据类型的一种技术。本主题将深入探讨如何通过重载加减法运算符来实现复数类的成员函数。复数类是用于表示复数(包括实部和虚部)的...

    运算符优先算法利用数据结构中的运算符优先算法实现整数的加、减、乘、除、括号的多项式运算,运算表达式以#结尾

    运算符优先算法 利用数据结构中的运算符优先算法实现整数的加、减、乘、除、括号的多项式运算,运算表达式以#结尾。测试表达式如下运算: "1+(1+2)*(5+25/5)#" 利用数据结构中的运算符优先算法实现整数的加、减、乘...

    实验7 多态性和运算符重载.doc

    "实验7 多态性和运算符重载" 多态性是指类族中具有相似功能的不同函数使用同一名称来实现,从而可以使用相同的调用方式来调用这些具有不同功能的同名函数。C++中的多态的实现形式包括函数重载、运算符重载、虚函数...

    010302_【第3章:Java基础程序设计】_运算符、表达式与语句

    本章“第3章:Java基础程序设计”着重讲解了运算符、表达式与语句这三个核心概念,它们是构建任何Java程序的基础。 首先,我们来探讨运算符。Java中的运算符用于执行特定的数学或逻辑操作。它们可以分为多种类型,...

    重载运算符,测试输入的长度能否构成一个三角形

    在C++编程中,重载运算符是一种强大的特性,它允许我们为已有的运算符赋予新的含义,以适应特定的数据类型。在这个特定的项目中,我们重载了两个运算符:加法运算符"+"和大于运算符">",用于判断三个边长是否能构成...

    编译原理识别界符和运算符的自动机

    在编译原理中,识别界符和运算符是编译器设计的重要环节,这涉及到词法分析阶段。词法分析器(通常称为扫描器或词法分析器)的任务是将源代码分解为一个个有意义的单元,即标记(Token),这些标记可以是关键字、...

    运算符重载的基本内容

    运算符重载是C++语言中的一项重要特性,它允许开发者为用户自定义的数据类型(如类)赋予标准运算符新的含义,使得这些运算符在处理这些特定类型时能够执行相应的操作。运算符重载的核心在于,通过创建与运算符关联...

Global site tag (gtag.js) - Google Analytics