ES5
var f = function (callback) {
console.log(1);
callback && callback.call();
}
f(function () {
console.log(2)
}) //输出1和2
ES6
var f = function (callback) {
console.log(1);
return new Promise(function (resolve, reject) {
resolve()
})
}
f().then(function () {
console.log(2)
}) //输出1和2