◆ 他ブラウザも bind 不要なので bind せずに使える

昔は console.log などを console コンテキストで使わないと Illegal invocation とエラーになってました

こういうの
const log = console.log
log(1)

対策で bind を使っていました
const log = console.log.bind(console)
log(1)

Promise で使われてるのは目にしたことがある人が多いと思います
new Promise(fn)
.then(console.log.bind(console), console.error.bind(console))
こんなの


ですが 今はエラーになりません
const log = console.log
log(1)
// 1

Promise.resolve(1).then(console.log)
// 1

そのまま使えます

IE / Edge はもともとエラーにならないので Chrome がエラーにならなくなったことで 今後は console に対して bind する必要はなさそうです
Chrome 52 の頃でも エラーになってないので結構前に変更されたのかもしれません


console なのでデバッグ用途のみですがけっこうありがたいことなのでもうちょっと早く気づけていたらなー と思います