Fucntions are the basic building blocks of any application. Type script provided better ways to handle functions with annotations, optional parameters, default parameters, rest parameters.
'function' key word creates its own scope and 'this'. So functions cannot access parent properties and methods. Lambda functions provide exactly this feature.