Zillionnn
2016-03-26 09:02
采纳率: 28.6%
浏览 4.9k

JS 中怎么把定义的对象的一个属性作为一个数组

function jsonObj(text, nodes){
            this.text =text;
            this.nodes =nodes;

        }

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

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 已采纳
     function jsonObj(text, nodes){
                this.text =text;
                this.nodes =[nodes];/////
    
            }
    jsonObj.prototype.add=function(node){
    this.nodes.push(node)
    }           
    
    点赞 打赏 评论
  • NetDomainer 2016-03-26 11: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。

    点赞 打赏 评论

相关推荐 更多相似问题