《javascript精炼》----对象(笔记,个人向)

对象字面量

//定义一个空对象,这里的空指的是其本身属性为空,dog对象继续了Object.prototype的属性和要领
var dog={}

//增加属性/要领
dog.name="Beijing"
dog.getName= function(){
    return this.name
}
//检索
dog["name"] //Beijing
dog.name //Beijing
//完整删除属性/要领
delete dog.name

援用

对象经由过程援用来通报,他们永久不会被复制

var Bob = dog
Bob.footers = 4
var f = dog.footers 
// 由于Bob 和f指向同一个对象,所以效果f 的效果为4

var a={}, b={}, c={}
//a,b,c每一个都援用差别的空对象
a = b =c ={}
//a,b,c援用同一个空对象

原型

每一个对象都连接到一个原型,并能够从中继续属性,一切字面量建立的对象都连接到Object.prototype

  • 反射

我们经经常运用typeof搜检对象的属性,但typeof对原型链的对像也会进行搜检,能够运用hasOwnProperty,他只检测对象的自有属性,不会搜检原型链上的属性

man.hasOwnProperty('legs') //true
man.hasOwnProperty('constructor') //false
  • 删除

delete运算符能够删除对象的本身属性,而不会对原型链上的对象有影响,偶然delete对象上的属性会致使原型链上的属性溢出来

    原文作者:ZONE_98F
    原文地址: https://segmentfault.com/a/1190000016254540
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞