Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javascript中选择对象的子集_Javascript_Jquery - Fatal编程技术网

如何在javascript中选择对象的子集

如何在javascript中选择对象的子集,javascript,jquery,Javascript,Jquery,我有一个javascript对象,比如说oBj,有很多属性,oBj.att1,oBj.att2。。。目标收件人 我可以将这个对象传递到jQuery的param函数中,以快速创建URI 是否可以选择oBj.att1和oBj.att2并将其传递给param函数 请原谅,我对Javascript非常缺乏经验 更新: 代码示例: var oBj = new Object(); oBj.att1 = 1; oBj.att2 = 2;

我有一个javascript对象,比如说oBj,有很多属性,
oBj.att1,oBj.att2。。。目标收件人

我可以将这个对象传递到jQuery的param函数中,以快速创建URI

是否可以选择
oBj.att1
oBj.att2
并将其传递给param函数

请原谅,我对Javascript非常缺乏经验

更新:

代码示例:

var oBj = new Object();
            oBj.att1 = 1;
            oBj.att2 = 2;
            oBj.att3 = 3;
对!!当然

我发现最简单的方法是使用一个名为“lodash”(或“下划线”)的第三方库。包含库后,您可以:

_.pick(oBj, ['attr1', 'attr2'])
见:

但如果您不想使用第三方库,则可以:

var oBj={
"a":1,,
“b”:2,
c:3
};
变量选择=功能(对象、属性){
返回属性reduce(函数(结果、键){
结果[键]=对象[键];
返回结果;
}, {});
};

log(pick(oBj,['a','c'])您尝试过什么,希望实现什么?一个代码示例会很有用给我几分钟的时间来处理它。我将更新…您使用的jQuery也是domasz,jQuery只是$.param(oBj);建议一个完整的库或一个pick函数来访问2个Javascript属性,这看起来太过分了。。至少你更新了,所以这不是图书馆唯一的答案…太好了。非常感谢。
// lets say you have  function

    function process_data(data )
    {
        // logic goes here 
    }

// this may be you json object
    var json_data  = {
        "obj1": {....} ,
        "obj2": {....} ,
        "obj3": {....} ,
        .
        .
        .
        "obj1": {....} ,
    }

//create new object with required attributes

    var new_obj = {}
    new_obj["obj1"] = json_data["obj1"]
    new_obj["obj2"] = json_data["obj2"]

// pass to function

    process_data(new_obj)