“增强js程序代码的健壮性”之我见大量示例代码

 更新时间:2007年05月13日 00:00:00   作者:  
在书写和使用js程序的过程中,我们经常会遇到各种各样的错误,对于一个依赖于浏览器的语言,我们很难完全去控制其在任何时刻都正确无误的运行。但是我们仍需做出自己努力取增强我们书写的js程序代码的健壮性和安全性,尽可能减少错误的出现概率。
以下为本人在学习js过程总结的几点关于增强js程序的健壮性的心得,如果您觉得对你有一点的价值,那我就达到自己的目的了,如果你觉得没有什么意义,请您也不必扔砖头,谢谢。
(1)对于必要的参数要判断是否被正确的传入。
代码示例:

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

(2)根据传入的参数类型不同做不同处理:
例如当我们要获取一个html元素对象时,要判断传入的是一个id还是一个元素对象。
代码示例:

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

(3)为参数设定默认值。

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

(4)检查传入的参数类型。
例如:
我们要求传入的某个参数必须为数字。
示例代码:

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

再比如可能我们需要通过参数设定一个宽度或高度值:
示例代码:

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

(5)在JS的oo编程中,如果程序要获取当前实例名,则必须对传入实例名做判断。
示例代码:

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

(6)在解析xml数据之前首先要检查传入xml数据类型(Dom?xml字符串?文件名)及其结构的合法性。
示例代码:

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

(7)善用try...catch语句,很多时候的错误我们无法屏蔽,使用try...catch可以很容易的将这些错误过滤掉。
比如当我们在使用userData时,很多浏览器不支持,使用try...catch可以简化我们的处理。

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

欢迎大家多评论,提出更好更多的建议。
arg==undefined 改成 arg === undefined 可能会好些
var arg1=arg1||"default arg1";
这样写略有点问题
arg1是null 0 "" false都不行

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

三个等号表示类型也相等。JS在比较时不会自动转换类型。

相关文章

  • js 判断各种数据类型的简单方法(推荐)

    js 判断各种数据类型的简单方法(推荐)

    下面小编就为大家带来一篇js 判断各种数据类型的简单方法(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • js防阻塞加载的实现方法

    js防阻塞加载的实现方法

    下面小编就为大家带来一篇js防阻塞加载的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-09-09
  • 自定义函数实现IE7与IE8不兼容js中trim函数的问题

    自定义函数实现IE7与IE8不兼容js中trim函数的问题

    这篇文章主要介绍了自定义函数实现IE7与IE8不兼容js中trim函数的方法,涉及trim函数的重写与正则匹配的技巧,需要的朋友可以参考下
    2015-02-02
  • JS字符串与二进制的相互转化实例代码详解

    JS字符串与二进制的相互转化实例代码详解

    这篇文章主要介绍了JS字符串与二进制的相互转化 ,在文中给大家提到了Js之字符串和字节码之间的相互转换,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-06-06
  • 使用JavaScript实现alert的实例代码

    使用JavaScript实现alert的实例代码

    本文通过实例代码给大家介绍了js实现alert的方法,代码简单易懂,非常不错,具有参考借鉴价值,需要的的朋友参考下吧
    2017-07-07
  • JS实现的简单tab切换功能完整示例

    JS实现的简单tab切换功能完整示例

    这篇文章主要介绍了JS实现的简单tab切换功能,结合完整实例形式分析了javascript基于事件响应实现页面元素属性动态变换相关操作技巧,需要的朋友可以参考下
    2019-06-06
  • js清空form表单中的内容示例

    js清空form表单中的内容示例

    这篇文章主要介绍了js如何清空form表单中的内容,下面有个不错的示例,大家可以参考下
    2014-05-05
  • Echarts如何自定义label标签的样式(formatter,rich,添加图标等操作)

    Echarts如何自定义label标签的样式(formatter,rich,添加图标等操作)

    通常情况下,echarts中对于图像的设置是统一的,下面这篇文章主要给大家介绍了关于Echarts如何自定义label标签的样式的相关资料,包括formatter,rich,添加图标等操作,需要的朋友可以参考下
    2023-02-02
  • JavaScript处理XML DOM、XPath和XSLT方法详解

    JavaScript处理XML DOM、XPath和XSLT方法详解

    这篇文章介绍了JavaScript处理XML DOM、XPath和XSLT的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • JavaScript中跨标签页通信的常见方式

    JavaScript中跨标签页通信的常见方式

    跨标签页通信是指在浏览器中的不同标签页之间进行数据传递和通信的过程,这篇文章为大家整理了几个常见的跨标签页通信方式,感兴趣的小伙伴可以了解下
    2023-10-10

最新评论