import { default as detectType } from './detect-type';
/**
* 数组转换为对象
* @param {array} arr 待转换数组
* @param {string} key 转换依据,数组对象元素的key
* @return {object} res 转换后的对象
* @description 数组元素均为对象,转换后对象的key值为数组对象元素的某key对应value
*/
function arrayToObject(array, key) {
if (!array || !key) {
throw Error('缺失必要参数');
}
if (!detectType(array, 'array')) {
throw TypeError('入参类型错误,待转换类型必须为array');
}
var res = {};
array.forEach(function (item) {
if (item && item[key]) {
// 转换后对象的属性key值
var keyValue = item[key];
// 转换后对象的属性key对应value,即obj
var obj_1 = {};
Object.keys(item).forEach(function (k) {
if (k !== key) {
obj_1[k] = item[k];
}
});
res[keyValue] = obj_1;
}
});
return res;
}
export default arrayToObject;
//# sourceMappingURL=array-to-object.js.map