gpt4 book ai didi

json - 如何使用数组中存储的属性名称修改 javascript 对象

转载 作者:太空宇宙 更新时间:2023-11-04 01:45:48 25 4
gpt4 key购买 nike

我正在使用 Node.js,并且我有一个 jsonFile,它允许我创建一个对象:

var dateFile = './Dictionnary/lastUpdate.json';
var dateObj = jsonfile.readFileSync(dateFile);

对象是这个:

var dateObj = {
"l2D": "2018-07-10T08:45:03.000Z",
"CU": "2018-07-10T08:45:03.000Z",
"l2G": "2018-07-10T08:45:03.000Z",
"la1": "2018-07-10T08:45:03.000Z",
"la2": "2018-07-10T08:45:03.000Z",
"lru": "2018-07-10T08:45:03.000Z",
"nu3": "2018-07-10T08:45:03.000Z",
"DictionnaryTime": "2018-07-30T07:59:47.000Z"
}

我想使用如下脚本更新属性的值:

var citiesDictNames = ['CU', 'l2D', 'l2G', 'la1', 'la2', 'lru', 'nu3'];

for (i = 0; i < csvCitiesNames.length; i++) {
newDate = function(...);
var name = citiesDictNames[i];
dateObj.name = newDate;
jsonfile.writeFile(dateFile, dateObj, function(err) {
if (err) {
console.error(err);
} else {
console.log('LastModified Date updated');
}
});
}

但结果是这个对象:

var dateObj = {
"l2D": "2018-07-10T08:45:03.000Z",
"CU": "2018-07-10T08:45:03.000Z",
"l2G": "2018-07-10T08:45:03.000Z",
"la1": "2018-07-10T08:45:03.000Z",
"la2": "2018-07-10T08:45:03.000Z",
"lru": "2018-07-10T08:45:03.000Z",
"nu3": "2018-07-10T08:45:03.000Z",
"DictionnaryTime": "2018-07-30T07:59:47.000Z",
"name": "2018-07-04T16:12:43.000Z",
}

当我用 dateObj.l2D 或其他有效的值替换 dateObj.name 时,但当值位于 arrayList 中时,我不会成功。

最佳答案

只需使用dateObj[name] 访问语法。

Javascript Property Accessors

关于json - 如何使用数组中存储的属性名称修改 javascript 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51540096/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com