编写复杂环境下不出错的Javascript代码

三地思密达

三地思密达

2016-02-20 00:56

生活已是百般艰难,为何不努力一点。下面图老师就给大家分享编写复杂环境下不出错的Javascript代码,希望可以让热爱学习的朋友们体会到设计的小小的乐趣。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)

项目上线后,遇见一个很诡异的bug. 不断有用户反馈有问题,但开发和测试折腾了好久,都没找到重现条件。直到有个热心的用户跑过来,在用户的电脑上才发现问题所在:Flash版本过低,在js的某处判断了flash的版本,之后进入的代码分支中有这样一句:

YAHOO.util.Event.on(vipPopup, 'error', function () {...});

vipPopup在此处未定义,因此导致了出错。一旦找到出错点,解决起来就快了,不多说。

这问题让我想起一个一直想总结但一直没时间去总结的话题:如何让编写鲁棒的JavaScript代码?

鲁棒(Robust音译)的定义是:放在正确的环境能得到预期的结果,放在复杂的环境下也不会出错。很多JavaScript开发者还停留在裸写代码的时代,同时业界缺乏便捷低廉的前端测试方案,这导致项目上线后,某些bug在特定环境下才能触发,结果后续的bug定位就非常麻烦了。如果我们能在开发阶段,就让JavaScript代码鲁棒点,这样,即便测试覆盖不到某些分支,也不会因为异常而导致整个js代码坏掉。下面是我的一些经验:

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)

一、养成良好的编码习惯。良好的编码习惯有两个

展开更多 50%)
分享

猜你喜欢

编写复杂环境下不出错的Javascript代码

Web开发
编写复杂环境下不出错的Javascript代码

Java应用:编写高级JavaScript应用代码

编程语言 网络编程
Java应用:编写高级JavaScript应用代码

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

MYSQL出错代码及出错信息对照

编程语言 网络编程
MYSQL出错代码及出错信息对照

javascript 编写自己的框架

Web开发
javascript 编写自己的框架

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

编写安全的ASP代码

ASP
编写安全的ASP代码

mysql常见出错代码

PHP
mysql常见出错代码

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

WPS2024轻松制作自荐书教程

WPS2024轻松制作自荐书教程

30个JavaScript滑动和滚动效果

30个JavaScript滑动和滚动效果
下拉加载更多内容 ↓