当前位置: 首页 > news >正文

手机网站开发技巧阳江今天刚刚发生的重大新闻

手机网站开发技巧,阳江今天刚刚发生的重大新闻,网站建设报告 商业价值,做电商运营还是网站运营哪个好前言 在javascript里,可以有多种判断对象属性是否存在的方法,使用哪种方法来判断,取决于对 “存在” 两个字的定义是什么。 方法1:对比undefined const obj {} if (obj.id ! undefined) {console.log(存在) } else {console.l…

前言

在javascript里,可以有多种判断对象属性是否存在的方法,使用哪种方法来判断,取决于对 “存在” 两个字的定义是什么。

方法1:对比undefined

const obj = {}
if (obj.id !== undefined) {console.log('存在')
} else {console.log('不存在')
}

此种方法的缺点是,如果对象真的有一个 id 属性,但是值为undefined的话,此方法会判断为 id 属性不存在。

方法2:使用Object.keys()

const obj = {id: 1}
if (Object.keys(obj).includes('id')) {console.log('存在')
} else {console.log('不存在')
}

Object.keys()可以获取到一个对象全部自有可枚举属性,如果一个属性不符合 “自有” 和 “可枚举” 这两个条件的话,Object.keys()是获取不到的,就会导致判断为属性不存在。

自有

“自有”的意思是这个属性是对象自己的,而不是在它的原型链上,比如:

const obj = {}obj.id = 1 // 此时的id是obj的自有属性obj.__proto__.id = 1 // 此时的id不是obj的自有属性
可枚举

每一个对象属性都有一个描述符,例如下面代码是获取 obj 对象 id 属性的描述符:

const obj = {id: 1}
console.log(Object.getOwnPropertyDescriptor(obj, 'id'))
// 输出:{value: 1, writable: true, enumerable: true, configurable: true}

输出内容中的 enumerable就是可枚举的描述符,值为 true 代表此属性可枚举可遍历,false 代表不可以。

如果我们给 obj 对象添加一个不可枚举的 id 属性,会发现使用Object.keys() 方法会判断为属性不存在:

const obj = {}
// 定义一个不可枚举的属性
Object.defineProperty(obj, 'id', {value: 1,enumerable: false
})if (Object.keys(obj).includes('id')) {console.log('存在')
} else {console.log('不存在') // 输出:不存在
}

方法3:使用hasOwnProperty()

const obj = {id: 1}if (obj.hasOwnProperty('id')) {console.log('存在')
} else {console.log('不存在')
}

此方法跟 方法2 相似,区别是此方法只需要满足“属性是自有的”这一个条件就可以了,而不管属性可不可枚举,都能获取到。

方法4:使用in

const obj = {id: 1}if ('id' in obj) {console.log('存在')
} else {console.log('不存在')
}

此方法在本文提到的4种方法里,判断范围是最广的,不管属性是“自有的”还是“非自有的”,是“可枚举的”还是“不可枚举的”,它都能判断得出来。

http://www.yayakq.cn/news/240541/

相关文章:

  • 广东睿营建设有限公司网站wms仓储管理系统
  • 食品购物网站建设网站开发 百度网盘
  • 中国做木线条的网站影视网站建设策划文案
  • 青白江建设网站中国八大设计院指的是哪些
  • vs2010做网站登陆界面境外网站在国内做镜像
  • 网站添加备案号网站如何强制修改主页 源码
  • 大朗做网站的合肥网站建设佳蓝网络
  • 信息网站怎么做莲湖微网站建设
  • 网站qq 微信分享怎么做的lnmp和wordpress
  • wordpress自动网站地址深圳企业公司有哪些
  • 军事网报名入口专业排名优化工具
  • 开发一个购物app需要多少钱长沙网站seo技术
  • dedecms 网站栏目管理如何做美食的视频网站
  • 网站开发的技术手段有哪些佳木斯市郊区建设局网站
  • 茶叶网站建设哪家seo技术经理
  • 个人做网站手机获取验证码高端网站制作要多少钱
  • 网站优化是外包还是自己做竞价开户公司
  • asp网站开发基础域名关联网站
  • 移动网站开发入门企业名录软件
  • 做网站用apache还是nginx怎么建设只要注册就赚钱的网站
  • 绍兴市高速公路建设指挥部网站wordpress类别图标
  • 上传网站程序如何注册免费网站
  • 微信公众号的微网站怎么做的网页设计实训报告总结200字
  • 做养生网站需要证件吗叙述网站的设计制作流程
  • 地方门户网站赚钱软件商城有哪些
  • 大连网站建设吗西安网站建设ruiqinet
  • 四川网站建设 四川冠辰科技wordpress目录权限设置
  • 简述企业网站的建设过程游戏网站上图片动态怎么做的
  • c#网站购物车怎么做电商网站开发简历
  • 网站建设的本质做外贸有哪些免费的网站有哪些