如果抛出错误了,你就不知道a=NaN了,抛出异常和返回NaN两者只能选一个,js选择了后者
我想parseInt都返回NaN了,那它还能抛出什么异常?这里callback一定会被调用
和java的用法相似但有差别,比如,catch(err/*这里必须要指定一个名字*/),没法像java那样在catch的()内按照异常类型类捕捉,但可以在catch(err){/*在这里根据err类型来区分,但似乎很少见到有这么用的*/}