I am little confused about while object missing the reference(context).
In TypeScript (shown here with some dummy parameters for explanatory reasons):
Fat Arrow
var x = new SomeClass();    
someCallback(function(a){x.doSomething(a)});// some time this x object may 
missing the    reference (context) of x object
someCallback(a => x.doSomething(a));// if we using arrow function, then how 
it manage stabling the object context? which is doing same below bind()code. 
bind() : Functions created from function.bind() always preserve 'this'
var x = new SomeClass();
window.setTimeout(x.someMethod.bind(x), 100);//bind will be also manage 
the x context(reference). 
Question:
- What are the performance and differences between them?
- when to use bind()andarrow(a=>a...)function?
 
     
     
    