Javascript中的索引,谈谈自己对索引的见解

来源:互联网 发布:服装设计用什么软件 编辑:程序博客网 时间:2024/06/11 04:52

检索

要检索对象中半酣的值,可以采用[]后缀中括住一个字符窜表达的方式。如果字符串表达式是一个常数,而且它是一个合法的JavaScript标识符而并非保留字,那么也可以用表示法代替。优先考虑使用 表示法代替。优先考虑使用 表示法,因为它更紧凑且可读性更好。

stooge["first-name"] //"JOE"

flight.departure.IATA //"SYD"

如果你尝试检索一个并不存在的成员元素的值,将一个返回 undefined值。

stooge["middle-name"] //undefined

flight.status //undefined

stooge["FIRST-NAME"] //undefined

| |运算符可以用来填充默认值:

var middle = stooge["middle-name"] | | "{none}";

var status = flight.status | | "unknow";

尝试检索一个undefined值将会导致TypeError异常。这可以通过&&运算符来避免错误:

flight.equipment //undefined

flight.equipment.model //throw "TypeError"

flight.equipment && flight.equipment.model //undefined

如有想一起学习,共同进步的小白有共享学习交流群:621071874。

JavaScript篇之检索(不做标题党)

更新

对象中的值可以通过赋值语句来更新。如果属性名已经存在对象中,那么这个属性值将被替换。

stooge['first-name'] = 'Jerome';

如果对象之前并没有拥有那个属性名,那么该属性就被扩充到该对象中。

stooge['middle - name'] = 'Lester';

stooge.nickname = 'Curly';

flight.equipment = {

model:'Boeing 777'

};

flight.status = 'overdue';

JavaScript篇之检索(不做标题党)

引用

对象通过引用来传递。它们永远不会被拷贝:

var x = stooge;

x.nickname = 'Curly';

var nick = stooge.nickname;

//因为x和stooge是指向同一个对象的引用,所以nick为'Curly'

var a = {}, b = {}, c = {};

// a、b和c每个都引用过一个不同的空对象

a = b = c {};

//a、b和c 都引用同一个空对象。

JavaScript篇之检索(不做标题党)

JavaScript篇之检索(不做标题党)

如有不足,还望各位大佬补充