Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.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,全部: [更新]我想:在一篇文章中,请解释一下: 结果是: 表单的函数类型文本 (ParamList)=>ReturnType 与对象类型文字完全等效 {(参数列表):返回类型} So,冒号:带括号{}箭头=> 我对Typescript非常陌生,有一个例子让我对它的语法感到困惑: var sayHello: (input: string) : string = function (s: string) { return "Hello " + s; } var stringUtils:

全部:

[更新]我想:在一篇文章中,请解释一下:
结果是:

表单的函数类型文本

(ParamList)=>ReturnType

与对象类型文字完全等效

{(参数列表):返回类型}

So,冒号
带括号
{}
箭头
=>


我对Typescript非常陌生,有一个例子让我对它的语法感到困惑:

var sayHello: (input: string) : string = function (s: string) {
    return "Hello " + s;
}
var stringUtils: { (input: string): string; }[];
stringUtils.push(sayHello);
有人能帮我解释一下这段代码的作用吗?特别是第一部分的定义是什么

var sayHello: (input: string) : string = function (s: string) {
    return "Hello " + s;
}
示例说sayHello是一个函数变量,但当我运行它时,我得到了“=>”预期错误,这是否意味着该语法属于旧的typescript,但现在不存在

谢谢

有人能帮我解释一下这段代码的作用吗?特别是第一部分的定义
var sayHello:(输入:string):string=函数(s:string){

应该是:

var sayHello: (input: string) => string = function (s: string) {

我们说的是
sayHello
是一个函数,它接受一个字符串并返回一个字符串
:(输入:string)=>string
。然后我们将它分配给这样一个函数
=函数(s:string){

实际上我甚至不确定这是不是有效的TypeScript…?当我把它粘贴到这里时,它似乎不起作用:@Katana314谢谢,我这边也没有,所以基本上它可能是一个打字错误?这是我的意图吗?
var sayHello:(input:string)=>string=函数(s:string){返回“Hello”+s;}
。在深入研究之前,最好先得到确认explanation@Katana314不确定,但我想是的。这是一本名为《揭示打字脚本》(Pub.2013)的书中的内容,它使用这个例子来说明为什么我们需要接口。如果您正在阅读的书中不断出现语法错误,您应该找到另一本书…?谢谢,我正在阅读您建议的gitbook。有一件事让我感到困惑的是接口的定义,我想知道如何定义一个带有字符串成员的接口和一个带有字符串的函数成员参数和返回字符串?我从这篇文章中读到:当在一个接口中指定一个函数时,我不确定这次为什么它可以使用冒号?(在基础部分:它使用接口Greetable{greet(message:string):void;})@Kuan这里讨论了这个区别:它只是一个属性速记