这期的博客我们来讲讲什么是BUG,想我这批95后,大多都爱玩电子游戏,竟然经常玩这类游戏的话,那么BUG这个词大家肯定都不会陌生,因为不同的游戏或多或少都会有哪些BUG。
就好像当初我玩的CF穿越火线,里面应为地图比较大,所有就一直都存在着卡箱子的BUG,就是人物在箱子的边缘WSAD上下左右的移动,就可以将游戏人物卡到地下,浙江生化幽灵就攻击不到玩家,但是玩家能用枪武器攻击生化幽灵,像这样的等等,都是游戏BUG产生的。
那么什么是bug呢,bug就是程序执行过程中遇到的异常中断才会产生的,其中就涉及到了try catch的使用,try里面写着可能发生错误的代码,catch里面写着仅在发生错误时候才执行,错误的处理代码一是提醒用户错误信息,二是记录系统日志,还有个finally,它是无论是否发生错误,都必须执行的代码,例如释放资源。
error:Error对象 在错误发生的是,自动创建,保存错误信息的对象。 ReferenceError, 要使用的变量没找到;TypeError 调用了对象的方法 类型错误。
我们无法提前预料的错误的做法就是使用try catch,抛出错误的目的通产个是微利提醒使用者错误的使用了程序。
垃圾回收机制(GC),执行环境负责管理代码执行过程中使用的内存。原理是垃圾收集器会定期的找出那些不在继续使用的变量,然后将其释放,但是这个过程不是实时的,因为这个操作的开销比较大,所及垃圾回收器会按照固定的时间间断来周期性的执行。
标记清楚指的是当变量进入环境时,将变量标记“进入环境”,当变量离开环境时,标记为“离开环境”。某一个时刻,垃圾回收器会过滤掉环境中的变量,以及被环境变量引用的变量,剩下的就是被视为准备回收的变量。到目前为止,IE、Firefox、Opera、Chrome、Safari的js实现使用的都是标记清除的垃圾回收策略或者类似的策略,只不过垃圾收集的时间间隔互不相同而已,因此可以看出标记清楚算是目前最好的垃圾处理方式了。
bug和垃圾回收
最新推荐文章于 2021-02-25 05:10:18 发布