电脑上用浏览器或模拟器调试都正常,没有任何错误提示,用手机真机运行一半就卡死,调试了半天一句句代码去掉,最后终于找出是for(i=1;i<10;i++)这段出错了,i=1前面要加上var 或 let才行,本来要加是没错,但是为什么在电脑调试里不提示错误呢?白白浪费了半天时间去找这个错误。
1赞

这个算是javascript非标准写法在各个平台上的兼容问题?你 i变量都不定义就直接使用了
你都不按标准走,还怪平台喽。。
建议TypeScript
楼主的意思是说忘记写var或let了,在电脑上也没有报错
你这个心态,自己犯错不找自己问题,怪浏览器没给你提示,基本告别编程了
要我说cocos还是太善良了,还给你们提供这么方便的浏览器调试?让你尝尝每次调试都要打包到真机上的痛苦你就没那么多事了。
因为本来就没错,为什么要报错
我没说自己代码没问题,我意思是为什么代码有问题,浏览器不提示,还能正常运行,如果直接提示就可以提早发现问题了。
这就是你菜的理由?
其实是因为 js 运行环境比较宽松,这种类型定义会认为是全局定义,所以不会报错, 但在手机上是原生环境,走的是 jsb 绑定,可以理解为c++ 的运行标准,不允许你这么定义变量。
其实要调试也挺简单的,用浏览器运行一次后,没什么问题后,再用win 模拟器,运行一次,不报错的话,基本上手机上也可以正常运行了,
js手一抖就错了,连个提示都没有。还是ts把。