読者です 読者をやめる 読者になる 読者になる

console.lealog();

@leader22のWeb系に関する勉強めもブログですのだ

モバイル開発におけるconsole APIの注意点

JavaScript Chrome Android

Console - Web API Interfaces | MDN
Console API Reference - Google Chrome

もはやconsole.logだけの時代は終わった!
でも便利だからって必ずしも副作用が何もないかと言えば、そうではないです。
気をつけるべきとこはちゃんと気を付けて使いましょうってことで。

生えてるメソッドがバラバラ

console.** Android4.x 標準 iOS7 Safari PC Chrome Canary(43)
assert o o o
count o o o
clear x o o
debug o o o
dir o o o
dirxml o o o
error o o o
group o o o
groupCollapased o o o
groupEnd o o o
info o o o
log o o o
markTimeline o x o
memory o x o
profile x o o
profileEnd x o o
profiles x o x
table x o o
time o o o
timeEnd o o o
timeStamp x o o
timeline x x o
timelineEnd x x o
trace o o o
warn o o o

まぁハナから統一されてるなんて期待してなかったけども。

というわけで、普段使いでPCのChromeで開発してあれこれconsoleするのは良いけど、
それが実装されてない端末(もちろんAndroidのこと)だと、Uncaught Type Errorでそもそも落ちるのでご注意。

私はconsole.tableで罠にかかりました。

ほかにも

  • デカいデータをダンプしてると、それだけでメモリを食ってページが重くなる
  • consoleが参照持ちっぱなしで、メモリリークの温床になりうる
  • ログ吐きすぎでパフォーマンスも落ちる

などなど意外に気にすることだらけでございます。