我如何发送对象作为参数Javascript

时间:2013-03-02 16:53:05

标签: javascript arrays

我需要传递一个数组作为参数,但我有一个问题,我不知道如何解释它所以这里是例子:

我有这段代码:

var doc = document;

    var Class = {};

    Class.Validate = function(opc)
    {
        alert(opc.id);//
return Class;// when returns the object the alert trigger as expected showing "#name"
    };

Class.Validate({
    id: "#name",
})

但是我想要做的是:

var Class = {};
    Class.Validate = function(opc)
    {
        alert(opc.name);//when the object is return show display "carlosmaria"
return Class;//

    };

Class.Validar({
    name: {field:"carlos",field:"maria"},
})

我怎么能存档?

2 个答案:

答案 0 :(得分:2)

alert(opc.name)应返回类似{Object object}的内容,因为它是一个对象。第二点是你的对象有两次“字段”作为属性。

如果你想使用数组,你应该这样调用:

Class.Validar({
    name: ["carlos", "maria"]
})

然后,您可以遍历opc.name以连接全名。像这样:

Class.Validate = function(opc)
{
    var name = "";
    for (var i=0, len=opc.name.length; i<len; ++i) {
        name += opc.name[i];
    }
    alert(name);//when the object is return show display "carlosmaria"
    return Class;//
};

答案 1 :(得分:1)

考虑使用实际的arrays(通过array literals):

Class.Validate({
     name: ["carlos", "maria"]
});