javascript如何编写处理动态方法链接的函数

时间:2015-05-05 00:08:41

标签: javascript method-chaining supertest

所以我想说我有以下方法

api.post('users')
        .set(key,value);
        .send(data)
        .expect(201)

我很好奇在javascript中如何设置一个函数来动态调用/链接.set在第一个方法基于对象中的键数?所以,如果我有对象foo = {a: 1, b:2 , c:2}

该函数的行为类似于以下

 api.post('users')
            .set(a,1)
            .set(b,2)
            .set(c,3)
            .send(data)
            .expect(201)

2 个答案:

答案 0 :(得分:3)

该函数可以简单地在循环中调用.set

function setMultiple(api, values) {
    for (var key in values) {
        if (values.hasOwnProperty(key)) {
            api = api.set(key, values[key]));
        }
    }
    return api;
}

答案 1 :(得分:0)

var foo = {a: 1, b:2, c:2 }
var apiPost = api.post("users");
for(var key in foo){
     apiPost = apiPost.set(key,foo[key]);
}

apiPost.send(data).expect(201);