var source = [ [ 1, "wf", 1, "100" ], [ 2, "郭靖", 1, "100" ] ]; var keys = ["no", "name", "cur_q", "rightrate"]; var result = source.map(vals => { return vals.reduce((obj, val) => { return Object.assign(obj, {[keys[vals.indexOf(val)]]: val}) }, {}) }) console.log(result)