Javascript ';应为标识符';错误和';不可分配给类型编号';创建TypeScript类时出错

Javascript ';应为标识符';错误和';不可分配给类型编号';创建TypeScript类时出错,javascript,angular,typescript,Javascript,Angular,Typescript,还是有点新的编码。我试图在Angular项目中基于一个更大的JSON文件创建一个TypeScript类。我不确定它是否不喜欢字符串文本的属性方式,但这就是它们在JSON中声明的方式,我不确定是否有更好的方法在TS中声明它们。当我声明属性时,它们很好 // this all seems ok export class State { 'FIPS Code': number; 'Postal': string; 'Area Name': string; 'Less t

还是有点新的编码。我试图在Angular项目中基于一个更大的JSON文件创建一个TypeScript类。我不确定它是否不喜欢字符串文本的属性方式,但这就是它们在JSON中声明的方式,我不确定是否有更好的方法在TS中声明它们。当我声明属性时,它们很好

// this all seems ok
export class State {
    'FIPS Code': number;
    'Postal': string;
    'Area Name': string;
    'Less than a high school diploma, 1970': number;
... 
}
当我创建构造函数时,会出现各种错误

// all parameter identifiers say 'identifier expected'
constructor('FIPS Code': number, 'Postal': string,
        'Area Name': string,
        'Less than a high school diploma, 1970': number,
        'High school diploma only, 1970': number,
...) {

    // Type '"FIPS Code"' is not assignable to type 'number'
    this['FIPS Code'] = 'FIPS Code';

    // the next two are ok, I assume because they're strings
    this['Postal'] = 'Postal';
    this['Area Name'] = 'Area Name';

    // everything else remaining says not assignable to type 'number'
    this['Less than a high school diploma, 1970'] = 'Less than a high school diploma, 1970';
...
}

请不要混合变量、键和字符串

您可以使用字符串作为键来访问
对象
中的数据。但是变量(构造函数的参数)应该遵循它们的命名规则

//所有参数标识符都显示“预期标识符”
构造函数(FIPSCode:number,Postal:string,
区域名称:字符串,
Lessthana高中文凭1970年:数量,
高中文凭1970年:数字,
...) {
//类型“FIPS代码”不可分配给类型“编号”
该['FIPS代码]]=FIPS代码;
//我想接下来的两个是可以的,因为它们是字符串
这个['postall']=邮政的;
此['Area Name']=AreaName;
//剩余的所有内容都表示不可分配给键入“number”
这[‘低于高中文凭,1970’]=低于高中文凭,1970;
...
}
在这里,您可以找到更多关于如何声明变量的信息:

哦,我能做到!好的,我认为既然JSON中的属性是字符串,那么构造函数参数必须相同。我将很快进行调整和测试,但我看到错误会随着我所移动的几个而消失。谢谢