js 世界

JavaScript判断是否为空对象的几种方法

2022-07-28  本文已影响0人  前端末晨曦吖

点击打开视频讲解:https://www.bilibili.com/video/BV1XT411j7xD?spm_id_from=333.999.0.0&vd_source=66e2692cc471862d6c3f85dc4b9ea5dd

<template>
  <div id="app">
    <h2>JavaScript判断是否为空对象的几种方法</h2>
  <button @click="handerNullObj">1、空对象对应的字符串为 "{}"</button>
  <button @click="handerForIn">2、for in</button>
  <button @click="handerGetOwnPropertyNames">3、Object.getOwnPropertyNames()</button>
  <button @click="handerKeys">4、ES6 的 Object.keys()</button>
  </div>
</template>

<script>
export default {
  name: 'App',
  data(){
    return {
      
    }
  },
  methods:{
    // 1、空对象对应的字符串为 "{}"
    handerNullObj(){
      let data = {};
      let b = JSON.stringify(data) == "{}";
      console.log(b); // true
    },
    // 2、for in
    handerForIn(){
      let obj = {};
      let b = function () {
        for (let key in obj) {
          return false;
        }
        return true;
      };
      console.log(b()); //true
    },
    // 3、Object.getOwnPropertyNames()
    // Object 对象的 getOwnPropertyNames 方法,获取到对象中的属性名,存到一个数组中,返回数组对象,我们可以通过判断数组的 length 来判断此对象是否为空。
    handerGetOwnPropertyNames(){
      let data = {};
      let arr = Object.getOwnPropertyNames(data);
      console.log(arr.length == 0); // true
    },
    // 4、ES6 的 Object.keys()
    // 此方法也是返回对象中属性名组成的数组。
    handerKeys(){
      let data = {};
      let arr = Object.keys(data);
      console.log(arr.length == 0); // true
    },
  }
    
}
</script>

<style scoped>
 
</style>
上一篇下一篇

猜你喜欢

热点阅读