js原始值与对象的相等比较

简介: js原始值与对象的相等比较
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>原始值与对象的相等比较</title>
</head>
<body>
<script>
  let a = [];
  let b = "0";
  // 1
  console.log(a==0); // true
  // 2
  console.log(a==!a);// true
  // 3
  console.log(a==b); // false
  // 4
  console.log(b==0); // true
  // eg 1
  console.log(Number([])); // 0
  // eg 2
  console.log(Boolean([])); // true
  // eg 3
  console.log(String([])); // ''
  // eg 4
  console.log(Number(b)); // 0
  /*
    js假值:只有false、null、undefined、空字符、0和NaN,其它值转为布尔型都为true。
  */
  console.log(null == 0); // false
  console.log(null<0); // false
  console.log(null<=0); // true
  // 要比较相等性之前,不能将null和undefined转换成其他任何值。就是undefined和null与其他数在进行相等判断时不进行类型转换。
  // null == undefined,这个是true,但是关系运算符可以转换。
// 1、如果x不是正常值(比如抛出一个错误),中断执行。
// 2、如果y不是正常值,中断执行。
// 3、如果Type(x)与Type(y)相同,执行严格相等运算x === y。
// 4、如果x是null,y是undefined,返回true。
// 5、如果x是undefined,y是null,返回true。
// 6、如果Type(x)是数值,Type(y)是字符串,返回x == ToNumber(y)的结果。
// 7、如果Type(x)是字符串,Type(y)是数值,返回ToNumber(x) == y的结果。
// 8、如果Type(x)是布尔值,返回ToNumber(x) == y的结果。
// 9、如果Type(y)是布尔值,返回x == ToNumber(y)的结果。
// 10、如果Type(x)是字符串或数值或Symbol值,Type(y)是对象,返回x == ToPrimitive(y)的结果。
// 11、如果Type(x)是对象,Type(y)是字符串或数值或Symbol值,返回ToPrimitive(x) == y的结果。
// 12、返回false。
</script>
</body>
</html>
相关文章
|
1天前
|
JSON JavaScript 安全
向js发送含有NSDictionary对象或NSArray对象的消息
向js发送含有NSDictionary对象或NSArray对象的消息
9 0
|
2天前
|
前端开发 JavaScript
前端 JS 经典:判断对象属性是否存在
前端 JS 经典:判断对象属性是否存在
6 0
|
5天前
|
JSON 前端开发 JavaScript
前端 JS 经典:JSON 对象
前端 JS 经典:JSON 对象
9 0
|
5天前
|
前端开发 JavaScript
前端 js 经典:原型对象和原型链
前端 js 经典:原型对象和原型链
15 1
|
5天前
|
JavaScript 前端开发 流计算
使用JavaScript 中的Math对象和勾股定理公式,计算鼠标的位置与页面图片中心点的距离,根据距离对页面上的图片进行放大或缩小处理
使用JavaScript 中的Math对象和勾股定理公式,计算鼠标的位置与页面图片中心点的距离,根据距离对页面上的图片进行放大或缩小处理
|
6天前
|
JSON JavaScript 前端开发
js将json字符串还原为json对象
【5月更文挑战第14天】js将json字符串还原为json对象
30 1
|
6天前
|
设计模式 存储 消息中间件
JavaScript观察者模式:实现对象间的事件通信!
JavaScript观察者模式:实现对象间的事件通信!
|
6天前
|
设计模式 JavaScript 前端开发
JavaScript原型模式:实现对象共享属性和方法!
JavaScript原型模式:实现对象共享属性和方法!
|
6天前
|
JavaScript 前端开发 开发者
深入理解JavaScript对象创建
深入理解JavaScript对象创建
|
8天前
|
JavaScript 前端开发
js用Date对象处理时间
以上就是JavaScript中Date对象处理时间的一些基本方法。
26 6