Две функции TypeScript со статическими типами возврата. Синтаксис отличается, но они, кажется, делают то же самое? - PullRequest
0 голосов
/ 06 октября 2019

Я изучаю TypeScript и пытаюсь определить функцию со статическим типом возврата и некоторыми статическими параметрами. Оба эти определения, кажется, делают это, но синтаксис различен. Почему? Различаются ли они в чем-то, чего мне не хватает?

// function with statically typed parameters and return type defined
function addNums(n1: number, n2: number, n3: number): void 
{
    let sum = n1 + n2 + n3;
    alert(sum);
}

// This seems to accomplish the same thing but needlessly more complex
let alsoAddNums : (one: number, two: number, three: number) => void 
    = function(n1, n2, n3) 
    {
        let sum = n1 + n2 + n3;
        alert(sum);
    }

1 Ответ

0 голосов
/ 06 октября 2019

первый - это определение функции, а второй - переменная, которой назначена функция. это то, что вы делаете, если вам нужно сохранить ссылку на функцию:

function addNums(n1: number, n2: number, n3: number): void 
{
    let sum = n1 + n2 + n3;
    alert(sum);
}

let alsoAddNums : (one: number, two: number, three: number) => void = addNums

взаимодействие с ними обоими идентично.

...