返回值并保留javascript对象的成员
Return value and keep members of javascript object?
我正试图找出别人的代码,我真的被他们是如何做到这一点所困扰。代码很长,所以我将尝试给出一个简单的例子来说明我想要找出的东西。
我有如下内容:
var obj = function(){
this.obj1 = "test1";
this.obj2 = "test2";
};
var inst = new obj;
alert(inst);
输出[object]。我想知道怎么做,是使这个返回值"test1"代替-但也仍然使我能够调用对象成员,这样我也可以做
alert(inst.obj2);
并得到一个输出:'test2'。
我认为我可以这样做:
var obj = function(){
this.obj1 = "test1";
this.obj2 = "test2";
return this.obj1;
};
var inst = new obj;
alert(inst);
但这也返回[object]
这就是我试图破译的代码似乎正在做的事情。语法要复杂得多——我认为它使用了闭包和原型,但我仍然不明白这些,所以我真的不明白发生了什么。
多谢!
要使alert
显示[object Object]
以外的内容,请在对象上定义.toString()
方法。
function MyObj() {
this.obj1 = "test1";
this.obj2 = "test2";
};
MyObj.prototype.toString = function() {
return this.obj1;
};
var inst = new MyObj();
alert(inst); // will show "test1"
相关文章:
- 如何将从XML读取的值存储到本地对象's成员使用.get()函数
- Javascript映射对象成员以返回新的扁平对象
- 如何访问对象's成员通过另一种方法填充的方法
- 我需要使用什么语法来向一个对象的成员添加一个临时数组,该成员等同于一个字符串的通用列表
- CakePHP错误:在非对象上调用成员函数get(),使用cakejavascript助手时出错
- JavaScript 对象中的私有成员,带有 getter 和 setter
- 对象'未设置的数据成员值
- 控制台返回[Object-Object]而不是对象成员
- 为什么可以在内部函数成员中访问对象引用,而不能在内部属性成员中访问
- 从JavaScript对象访问数据's数组成员变量
- 对象属性不是在工厂成员函数内部创建的
- 在 JavaScript 中,如何有条件地向对象添加成员
- 如何在 Javascript 中将函数绑定到对象数据成员的更改
- 为什么在访问一个新对象的成员之前将其括在括号中
- console.log表示,当我调用对象的任何成员时,对象都是未定义的
- 如何使用正则表达式查找对象成员名称
- 如何向对象添加函数并引用其成员
- 访问javascript中对象类型的数组成员
- 在对象内部使用 for-in 循环来访问其成员
- 如何使用 Object.create() 而不是 new 创建具有私有成员的对象