PHPでやってみたが

intval('123'); # 123
intval('0123'); # 123
intval('abc'); # 0。0じゃないだろw
intval('abc123'); # 0。0じゃないだろクソが
intval(''); # 0。 shine

JavaScriptだと数値じゃないものはNaNとなるから
0と区別できるが、PHPだと区別できないじゃないか

NaNを0にしたければ parseInt('') || 0 とすればいいだけだし