2019-08-02 对象与实例对象

function bark() {
  console.log('holle')
}
bark.anianl = 'woll'
// 以上代码是可以的,因为在js中函数也是对象
function Person(filaName, lastName) {
  this.filaName = filaName
  this.lastName = lastName
}
const member = new Person()
Person.getFullName = function() {
  return `${this.filaName} ${this.lastName}`
}
console.log(member.getFullName) //TypeError
// 不能像常规函数那样给构造函数添加属性,如果想一次性给实例添加特性应该使用原型
Person.prototype.getFullName = function(){
}
function checkAge(data) {
  if (data === { age: 18 }) {
    console.log('You are an adult!')
  } else if (data == { age: 18 }) {
    console.log('You are still an adult.')
  } else {
    console.log(`Hmm.. You don't have an age I guess`)
  }
}

checkAge({ age: 18 })
// 在比较相等性时,基本数据类型通过value相比较,而对象则是通过引用比较,js中检测的是对对象相同地址的引用
// 题目中我们正在比较的两个对象不是同一个引用:作为参数传递的对象引用的内存位置,与用于判断相等的对象所引用的内存位置并不同

你可能感兴趣的:(2019-08-02 对象与实例对象)