我在打字稿中创建了如下界面
interface Test{
display(str : string): void;
}
let test : Test = {
display() : string{return "wszws"}
};
即使在测试中的显示函数没有字符串作为参数且返回类型为字符串的情况下,也可以正确编译。 然后,当我尝试使用调用测试时,
test.display(); 它显示缺少参数的错误 所以我加了 var c = test.display(“ My”);
我不明白它最初是如何允许使用错误的函数签名创建测试的,并且在调用它时提示错误。 同样还在测试中,该论点缺失。
我创建了另一个界面
interface User{
username : string;
password : string;
confirmPassword ?: string;
display(name : string) : string;
}
let user : User;
user = {username : 'tasneem',password : '', display(n:string){return n}};
如果我在这里
user = {username : 'tasneem',password : '', display(){}};
立即给我错误。
那么第一个真正令人讨厌的是什么?