使用 属性 赋值的多个函数可能吗?
Multiple functions using property assignment possible?
根据 Bryan Braun 的 this article 在 Javascript 中概述了编写函数的不同可能方式,属性 赋值是一种这样做的方法。他的例子是类似这样的:
var obj1 = {
SetName: function() {
obj1.name = "Programmer_Frank";
}
};
可以这样称呼:
obj1.SetName();
这工作正常。它给了我一个带有成员 "name"
和值 "Programmer_Frank"
.
的对象
然而,当我尝试时:
var obj1 = {
SetName: function() {
obj1.name = "Programmer_Frank";
}
SetAddress: function(theAddress) {
obj1.address = theAddress;
}
};
您可以这样引用这些函数:
obj1.SetName();
obj1.SetAddress("P Sherman 42 Wallaby Way");
这在 Chrome 行 SetAddress: function(theAddress) {
的开发人员调试器中给了我一个 Uncaught SyntaxError: Unexpected identifier
。
这是为什么?是否不可能对 2 个函数使用 属性 赋值?这是我的完整代码,它只是一个测试应用程序,所以它并不比我目前发布的内容多多少,但发布完整代码可能仍然有用。
<html>
<head>
<script>
var obj1 = {
SetName: function() {
obj1.name = "Programmer_Frank";
}
SetAddress: function(theAddress) {
obj1.address = theAddress;
}
};
</script>
</head>
<body>
<script>
obj1.SetName();
obj1.SetAddress("P Sherman 42 Wallaby Way");
</script>
</body>
</html>
第一个方法定义后缺少逗号
var obj1 = {
SetName: function() {
obj1.name = "Programmer_Frank";
}, //this comma
SetAddress: function(theAddress) {
obj1.address = theAddress;
}
};
根据 Bryan Braun 的 this article 在 Javascript 中概述了编写函数的不同可能方式,属性 赋值是一种这样做的方法。他的例子是类似这样的:
var obj1 = {
SetName: function() {
obj1.name = "Programmer_Frank";
}
};
可以这样称呼:
obj1.SetName();
这工作正常。它给了我一个带有成员 "name"
和值 "Programmer_Frank"
.
然而,当我尝试时:
var obj1 = {
SetName: function() {
obj1.name = "Programmer_Frank";
}
SetAddress: function(theAddress) {
obj1.address = theAddress;
}
};
您可以这样引用这些函数:
obj1.SetName();
obj1.SetAddress("P Sherman 42 Wallaby Way");
这在 Chrome 行 SetAddress: function(theAddress) {
的开发人员调试器中给了我一个 Uncaught SyntaxError: Unexpected identifier
。
这是为什么?是否不可能对 2 个函数使用 属性 赋值?这是我的完整代码,它只是一个测试应用程序,所以它并不比我目前发布的内容多多少,但发布完整代码可能仍然有用。
<html>
<head>
<script>
var obj1 = {
SetName: function() {
obj1.name = "Programmer_Frank";
}
SetAddress: function(theAddress) {
obj1.address = theAddress;
}
};
</script>
</head>
<body>
<script>
obj1.SetName();
obj1.SetAddress("P Sherman 42 Wallaby Way");
</script>
</body>
</html>
第一个方法定义后缺少逗号
var obj1 = {
SetName: function() {
obj1.name = "Programmer_Frank";
}, //this comma
SetAddress: function(theAddress) {
obj1.address = theAddress;
}
};