@phatht Vấn đề là ở Arrow Func. this của hai cách khai báo func sẽ khác nhau.
var log = console.log;
var self = this;
// Arrow Func
var test1 = ()=>{
if (this == self ) log("`this` in test1 equal self")
}
// not Arrow Func
var test2 = function () {
var self_test2 = this
if (this == self ) log("`this` in test2 equal self")
else {
if (this == self_test2) log("`this` in test2 equal self_test2")
}
}
test1()
test2()