टाइपस्क्रिप्ट में, मैं फ़ंक्शन के एक पैरामीटर को एक प्रकार्य फ़ंक्शन के रूप में घोषित कर सकता हूं। क्या ऐसा करने का एक "प्रकार-सुरक्षित" तरीका है जो मुझे याद आ रहा है? उदाहरण के लिए, इस पर विचार करें:
class Foo {
save(callback: Function) : void {
//Do the save
var result : number = 42; //We get a number from the save operation
//Can I at compile-time ensure the callback accepts a single parameter of type number somehow?
callback(result);
}
}
var foo = new Foo();
var callback = (result: string) : void => {
alert(result);
}
foo.save(callback);
सेव कॉलबैक सुरक्षित नहीं है, मैं इसे कॉलबैक फ़ंक्शन दे रहा हूं जहां फ़ंक्शन का पैरामीटर एक स्ट्रिंग है लेकिन मैं इसे एक नंबर दे रहा हूं, और कोई त्रुटि नहीं है। क्या मैं प्रकार-सुरक्षित फ़ंक्शन को सहेजने में परिणाम पैरामीटर बना सकता हूं?
TL; DR संस्करण: टाइपस्क्रिप्ट में .NET प्रतिनिधि के बराबर है?
(n: number) => any
किसी भी फ़ंक्शन हस्ताक्षर का मतलब है?