嘿,大家是 javascript 应用程序开发的新手。我的代码
var obj = {
models: "AN",
collection: {},
person: {},
changeDetails: function(values, babes) {
obj.person.name = values.name;
obj.person.age = values.age;
}
babe: function() {
return 5;
}
};
当我这样调用它时 obj.changeDetails({name:"George",age:20}).babe());
它向我抛出类似 Uncaught SyntaxError: Unexpected identifier
的错误
是否可以在 javascript 中调用 objectname.functionname.().anotherfunctionname()
??.如果可能,请将其作为显示其演示的答案发布..
谢谢
最佳答案
您有 2 个语法错误和 1 个逻辑错误
后面缺少一个逗号 ( ,
)
changeDetails: function (values, babes) {
obj.person.name = values.name;
obj.person.age = values.age;
}
应该是这样
var obj = {
models: "AN",
collection: {},
person: {},
changeDetails: function(values, babes) {
obj.person.name = values.name;
obj.person.age = values.age;
},
babe: function() {
return 5;
}
};
此外,您的右括号 ( )
) 过多
obj.changeDetails({name:"George",age:20}).babe());
应该是
obj.changeDetails({name:"George",age:20}).babe();
最后,能够调用方法babe
的对象,您必须在 changeDetails
内返回它函数,使用 this
是有意义的在此背景下。
最终解决方案
var obj = {
models: "AN",
collection: {},
person: {},
changeDetails: function(values, babes) {
this.person.name = values.name;
this.person.age = values.age;
return this;
},
babe: function() {
return 5;
}
};
obj.changeDetails({name:"George",age:20}).babe();
关于javascript - 在js中使用带有点运算符的嵌套函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24938160/