gpt4 book ai didi

javascript - 从 json 字符串转换为 json 对象后如何从 Typescript 中的对象数组获取结果,我的编码有什么问题

转载 作者:行者123 更新时间:2023-11-28 03:05:07 24 4
gpt4 key购买 nike

请参阅下面我的编码。从 json 字符串转换为 json 对象后,我正在从对象数组中简单提取数据。

export class FourColumnResults {

constructor(private column1: string, private column2: string,
private column3: string, private column4: string) {

}

public get $column1(): string {
return this.column1;
}

public set $column1(value: string) {
this.column1 = value;
}


/** all getter and setter methods */
}


export class ValidationSummary {

constructor(private column1: string, private column2: string, private column3: string,
private column4: string, private column5: string, private column6: string,
private column7: string) {

}

public get $column1(): string {
return this.column1;
}

public set $column1(value: string) {
this.column1 = value;
}

/** all getter and setter methods */

}

从“./FourColumnResult”导入{ FourColumnResults };从 './ValidationSummary' 导入 { ValidationSummary };

export class MyConverter {

public convert(jsonString: string): FourColumnResults[] {
const results: FourColumnResults[] = [];
const valSummary: ValidationSummary[] = JSON.parse(jsonString);
console.log("ValSummary object======== ", valSummary); // This is printing correctly

for(let i = 0; i < valSummary.length; i++) {
const value: ValidationSummary = valSummary[i];
console.log("=====>"+value.$column1);
}

return results;
}

}

以下是我从系统获取的实际 json 字符串。

[
{
"column1": "Data-1",
"column2": "Data-2",
"column3": "Data-3",
"column4": "Data-4",
"column5": "Data-5",
"column6": "Data-6",
"column7": "Data-7"
},
{
"column1": "Data-11",
"column2": "Data-12",
"column3": "Data-13",
"column4": "Data-14",
"column5": "Data-15",
"column6": "Data-16",
"column7": "Data-17"
},
{
"column1": "Data-31",
"column2": "Data-32",
"column3": "Data-33",
"column4": "Data-34",
"column5": "Data-35",
"column6": "Data-36",
"column7": "Data-37"
}
]

这里的问题是,我能够将上面的 json 字符串解析为我类型的 json 对象 ValidationSummary.ts使用以下编码。

const valSummary: ValidationSummary[] = JSON.parse(jsonString);

但是,我无法从以下编码中获得结果。

for(let i = 0; i < valSummary.length; i++) {
const value: ValidationSummary = valSummary[i];
console.log("=====>"+value.$column1); // Prints Undefined
}

我的编码有什么问题吗?请帮我解决。

最佳答案

应该是value.column1而不是value.$column1

for(let i = 0; i < valSummary.length; i++) {
const value: ValidationSummary = valSummary[i];
console.log("=====>"+value.column1); // Prints the value
}

关于javascript - 从 json 字符串转换为 json 对象后如何从 Typescript 中的对象数组获取结果,我的编码有什么问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60680804/

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