【发布时间】:2019-12-02 04:23:05
【问题描述】:
我需要将数组转换为具有键值的对象。例如
var Array = [17.3850, 78.4867]
我需要用这种方式转换成Object
var Object = {"lat":17.3850, "lng":78.4867}
【问题讨论】:
标签: javascript
我需要将数组转换为具有键值的对象。例如
var Array = [17.3850, 78.4867]
我需要用这种方式转换成Object
var Object = {"lat":17.3850, "lng":78.4867}
【问题讨论】:
标签: javascript
使用 Array.prototype.map() 对数组进行迭代,创建 Object 数组,最后使用 Object.assign() 将其转换为对象。
var key = ['lat', 'lng'];
var array = [17.3850, 78.4867]
var obj = Object.assign({}, ...key.map((e, i) => ({[e]: array[i]})))
console.log(obj)
【讨论】:
您可以使用键/值对数组映射一个数组,并使用Object.fromEntries 创建一个对象。
var array = [17.3850, 78.4867],
keys = ['lat', 'lng'],
object = Object.fromEntries(array.map((v, i) => [keys[i], v]));
console.log(object);
【讨论】:
您可以在 JavaScript 中使用 constructor。
class Location {
constructor(lat, lng) {
this.lat = lat,
this.lng = lng
}
}
var myArray = [17.3850, 78.4867];
var myLocation = new Location(myArray[0], myArray[1]);
myLocation.lat;
myLocation.lng;
您可以使用循环代替myArray[0] 和myArray[1] 使其动态化。
【讨论】: