相等性比较 JavaScript 中的 object.is()

javascriptweb developmentobject oriented programming更新于 2025/8/24 16:12:17

ES6 中引入了 object.is() 方法,用于比较两个值。这两个值可以是原始值,也可以是对象。它的比较效果比 == 和 === 稍好一些。

以下是相等性比较中 object.is() 的代码 −

示例

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
   body {
      font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
   }
   .result {
      font-size: 18px;
      font-weight: 500;
      color: blueviolet;
   }
</style>
</head>
<body>
<h1>Object.is() equality comparsion</h1>
<div class="result"></div>
<button class="btn">点击此处</button>
<h3>Click on the above button to compare objects using Object.is()</h3>
<script>
   let resEle = document.querySelector(".result");
   let BtnEle = document.querySelector(".Btn");
   let obj = { a: 11, b: 22 };
   let obj1 = { a: 11, b: 22 };
   let obj2 = obj;
   BtnEle.addEventListener("click", () => {
      if (Object.is(obj, obj1)) {
         resEle.innerHTML = "obj = obj1";
      } else {
         resEle.innerHTML = "obj != obj1 <br>";
      }
      if (Object.is(obj, obj2)) {
         resEle.innerHTML += "obj = obj2";
      }
   });
</script>
</body>
</html>

输出

点击‘点击此处’按钮 −


相关文章


有用资源