文件名称:提前让函数退出代替嵌套条件分支-清华大学计算机考研经验贴.
文件大小:8.5MB
文件格式:PDF
更新时间:2024-07-15 10:06:44
javasc
22.4 合理使用循环 在函数体内,如果有些代码实际上负责的是一些重复性的工作,那么合理利用循环不仅可以 完成同样的功能,还可以使代码量更少。下面有一段创建 XHR对象的代码,为了简化示例,我们 只考虑版本 9 以下的 IE 浏览器,代码如下: var createXHR = function(){ var xhr; try{ xhr = new ActiveXObject( 'MSXML2.XMLHttp.6.0' ); }catch(e){ try{ xhr = new ActiveXObject( 'MSXML2.XMLHttp.3.0' ); }catch(e){ xhr = new ActiveXObject( 'MSXML2.XMLHttp' ); } } return xhr; }; var xhr = createXHR(); 下面我们灵活地运用循环,可以得到跟上面代码一样的效果: var createXHR = function(){ var versions= [ 'MSXML2.XMLHttp.6.0ddd', 'MSXML2.XMLHttp.3.0', 'MSXML2.XMLHttp' ]; for ( var i = 0, version; version = versions[ i++ ]; ){ try{ return new ActiveXObject( version ); }catch(e){ } } }; var xhr = createXHR(); 22.5 提前让函数退出代替嵌套条件分支 许多程序员都有这样一种观念:“每个函数只能有一个入口和一个出口。”现代编程语言都会 限制函数只有一个入口。但关于“函数只有一个出口”,往往会有一些不同的看法。 下面这段伪代码是遵守“函数只有一个出口的”的典型代码: var del = function( obj ){ var ret; if ( !obj.isReadOnly ){ // 不为只读的才能被删除 if ( obj.isFolder ){ // 如果是文件夹 图灵社区会员 balabala233 专享 尊重版权