请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

hasOwnProperty的问题

老师您好, 为什么不直接写成People.hasOwnProperty(key) 而要写成
Object.prototype.hasOwnProperty.call呢? 是考虑运行性能吗?

正在回答

1回答

function People () {

  this.name = "daha"

}

People.xx = "sdf"

// 主要是查找hasOwnProperty上的性能考虑

// 方法1:向上一级Function.prtotype->再上一级Object.prototype原型查找hasOwnProperty,

//  需要损耗一点性能

console.log(People.hasOwnProperty("xx"))//true

// 方法2: 向上一级Object原型查找hasOwnProperty,需要损耗一点性能

console.log(People.prototype.hasOwnProperty.call(People, "xx"));//true

// 方法3: 向上一级Object原型查找hasOwnProperty,需要损耗一点性能

console.log(Function.prototype.hasOwnProperty.call(People, "xx"));//true

// 方法4:

console.log(Object.prototype.hasOwnProperty.call(People, "xx"));//true


0 回复 有任何疑惑可以回复我~
  • 提问者 宝慕林4313846 #1
    老师解释的真清楚, 谢谢老师!
    回复 有任何疑惑可以回复我~ 2021-08-28 11:17:26
  • keviny79 回复 提问者 宝慕林4313846 #2
    谢谢同学好评,刚注意到
    回复 有任何疑惑可以回复我~ 2021-09-08 10:19:30
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信