2 revolcat RevolCat 于 2016.03.26 17:02 提问

JS 中怎么把定义的对象的一个属性作为一个数组
function jsonObj(text, nodes){
            this.text =text;
            this.nodes =nodes;

        }

我想把nodes作为数组,这样可以插入多个对象,现在这样只能插一个对象

2个回答

showbo
showbo   Ds   Rxr 2016.03.26 19:35
已采纳
 function jsonObj(text, nodes){
            this.text =text;
            this.nodes =[nodes];/////

        }
jsonObj.prototype.add=function(node){
this.nodes.push(node)
}           
RevolCat
RevolCat function jsonObj(text, nodes){ this.text =text; this.nodes =[]; } jsonObj.prototype.add=function(node){ this.nodes.push(node); }; 我这么写就实现我要的功能了,谢谢给我思路
一年多之前 回复
NetDomainer
NetDomainer   2016.03.26 19:07

让我比较好奇的是,你的这个this对象是指向谁呢?
使用this关键字的时候就表示语句在对象中执行的,this指向该对象。
比如var obj = new Object();//这一句不能省,表示obj为一个对象。
obj.DoIt =function(myVal){
this.Val = myVal;//应该这样用,this指向obj对象;
//Val是js系统自动为对象创建的,不用声明;
}
调用是这样的。obj.DoIt(value);
所以,我认为你应该是想这样吧。
首先定义一个对象.
var obj = new Object();
(你想插入的对象)
/*
创建你想插入的数组nodes;
*/
obj.jsonObj = function(text,nodes){
this.Text = text;
this.Nodes = nodes;
}
调用就这样写obj.jsonObj("text",nodes),
此时obj对象就引入了一个数组形式的属性Nodes。

RevolCat
RevolCat 3Q,解决了
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!