Inequality (!=) - JavaScript 编辑
The inequality operator (!=
) checks whether its two operands are not equal, returning a Boolean result. Unlike the strict inequality operator, it attempts to convert and compare operands that are of different types.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Syntax
x != y
Description
The inequality operator checks whether its operands are not equal. It is the negation of the equality operator so the following two lines will always give the same result:
x != y
!(x == y)
For details of the comparison algorithm, see the page for the equality operator.
Like the equality operator, the inequality operator will attempt to convert and compare operands of different types:
3 != "3"; // false
To prevent this, and require that different types are considered to be different, use the strict inequality operator instead:
3 !== "3"; // true
Examples
Comparison with no type conversion
1 != 2; // true
"hello" != "hola"; // true
1 != 1; // false
"hello" != "hello"; // false
Comparison with type conversion
"1" != 1; // false
1 != "1"; // false
0 != false; // false
0 != null; // true
0 != undefined; // true
0 != !!null; // false, look at Logical NOT operator
0 != !!undefined; // false, look at Logical NOT operator
null != undefined; // false
const number1 = new Number(3);
const number2 = new Number(3);
number1 != 3; // false
number1 != number2; // true
Comparison of objects
const object1 = {"key": "value"}
const object2 = {"key": "value"};
object1 != object2 // true
object2 != object2 // false
Specifications
Specification |
---|
ECMAScript (ECMA-262) The definition of 'Equality operators' in that specification. |
Browser compatibility
BCD tables only load in the browser
See also
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论