Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在TypeScript中指定参数类型_Typescript - Fatal编程技术网

在TypeScript中指定参数类型

在TypeScript中指定参数类型,typescript,Typescript,我在JavaScript ES6中有以下代码: data = [{name:'Peter'}]; const first_name = data.find(o => o.Name === 'name').Value; 我想迁移到TS,在我设置的tsconfig.json文件中: "noImplicitAny": true, 现在我得到了: Parameter 'o' implicitly has an 'any' type 我试过: const first_name = dat

我在JavaScript ES6中有以下代码:

data = [{name:'Peter'}];
const first_name = data.find(o => o.Name === 'name').Value;
我想迁移到TS,在我设置的tsconfig.json文件中:

"noImplicitAny": true, 
现在我得到了:

 Parameter 'o' implicitly has an 'any' type 
我试过:

const first_name = data.find(o:object => o.Name === 'name').Value;
但后来我发现:

Error:  ',' expected. 

这是我使用TS的第一天,那么,如何将“Array.find”与TypeScript一起使用呢?我需要添加@type库吗

你的打字错误

data = [{name:'Peter'}];
const first_name = data.find(o => o.Name === 'name').Value;
假设你有这样的界面

interface People {
name: string;
}
数据的类型将是数组(或人员[])。您可以在
Name
属性(camelcase)上找到,而不是
Name
所有小写字母

此外,您希望获取
属性,但该属性在
人员
界面中不存在,这是一个错误

:


请注意,TS中良好的命名实践是使用camelCase,因此您应该使用“name”和“value”作为属性名称(而不是PascalCase),第一个名称的snake_情况也是如此,应该是
firstName

您的键入是错误的

data = [{name:'Peter'}];
const first_name = data.find(o => o.Name === 'name').Value;
假设你有这样的界面

interface People {
name: string;
}
数据的类型将是数组(或人员[])。您可以在
Name
属性(camelcase)上找到,而不是
Name
所有小写字母

此外,您希望获取
属性,但该属性在
人员
界面中不存在,这是一个错误

:


请注意,TS中的良好命名实践是使用camelCase,因此您应该使用“name”和“value”作为属性名称(而不是PascalCase),对于first_name的snake_案例,不需要使用相同的故事,即firstName应为
firstName

@type。我把你的代码粘贴到,打开noImplicitAny。我没有错。请再次检查
const first\u name=data.find(o:object=>o.name=='name').Value
语法错误,请尝试
const first\u name=data.find((o:object)=>o.name=='name').Value带有braces@type不需要。我把你的代码粘贴到,打开noImplicitAny。我没有错。请再次检查
const first\u name=data.find(o:object=>o.name=='name').Value
语法错误,请尝试
const first\u name=data.find((o:object)=>o.name=='name').Value带大括号