源代码的结构是这样的:
var vname = {
"name1":function(){
...
}
"name2":function(){
...
}
}
这样写的作用是什么?
写成函数表达式,看起来就很优美。
vname是一个js对象
name1是vname成员,类型为函数
name2是vname成员,类型为函数
使用时可以这么用vname.name1()或者vname.name2()
vname是一个json对象,name1,name2作为vname的成员
function name(){}会挂在window对象上
还有一个区别是:
var vname = {
name1:function(){
console.log('name1');
}
}
vname.name1();//name1
vname.name1 = function(){
console.log('name1 modify');
}
vname.name1();//name1 modify
function name() {
console.log('fun name');
}
name();//fun name modify
function name() {
console.log('fun name modify');
}
name();//fun name modify
在vname对象里面,name1, name2是它的属性,name1, name2后面跟的是对应的属性值,不管是什么类型的,都可以通过.name1, .name2来调用;
var vname = {
name: 'luoxue',
age: 18,
getAge: function() {
return this.age;
}
};
vname.getAge(); // 返回18
把很多方法写在一个对象上,代码结构清晰,利于管理,减少了全局变量,方便继承等等。