js中判断对象是否含有某个属性

hasOwnProperty

解释:hasOwnProperty() 方法返回一个布尔值,表示对象自有属性(而不是继承来的属性)中是否具有指定的属性。

用法:

对象名称.hasOwnProperty('属性名字')

在写代码会遇到判断对象类型变量是否含有某个属性,比如遍历时候用到的是否还有下一层级children属性表示等。

这边有一个业务,当头部某个导航项有多个层级的时候,把子层级在侧边栏展示,下面是一个简单实现
let showAside = false; //侧边栏是否展示
      //头部导航数据
let menuList = [
        {
          name: "首页",
          path: "/main",
        },
        {
          name: "模块二",
          path: "path2",
          children: [
            {
              name: "模块2-1",
              path: "/path2-1",
            },
            {
              name: "模块2-2",
              path: "/path2-2",
            },
          ],
        },
      ];
      //头部导航数据的点击事件里面,有children就把children赋值
      function selectHeadMenu(path) {
        menuList.forEach((item) => {
          if (item.path == path && item.hasOwnProperty("children")) {
            //true则会进入判断进行下一步处理
            showAside = true;
            //侧边栏的赋值操作
          }
        });
      }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值