当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 前淘宝前端开发工程师阿当的PPT中有JS技术理念问题

Javascript
JavaScript 继承详解(四)
兼容IE/Firefox/Opera/Safari的检测页面装载完毕的脚本Ext.onReady的实现
js 实现无缝滚动 兼容IE和FF
js 对象是否存在判断
优化 JavaScript 代码的方法小结
表单元素事件 (Form Element Events)
js 动态创建 html元素
prototype 学习笔记整理
JavaScript 创建对象
javascript 全角转换实现代码
DOM 基本方法
用showModalDialog弹出页面后,提交表单总是弹出一个新窗口
javascript 动态创建 Option选项
javascript 7行代码画出一个围棋棋盘
比较简单的异步加载JS文件的代码
javascript 层隐藏和显示的代码
自定义滚动条3.0
javascript iframe内的函数调用实现方法
Prototype Class对象学习
Prototype RegExp对象 学习

Javascript 中的 前淘宝前端开发工程师阿当的PPT中有JS技术理念问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-20   浏览: 360 ::
收藏到网摘: n/a

第一届 web rebuild 北京会有个前淘宝前端开发工程师阿当分享的 PPT 在公司团队内部有同事下载的分享,然后看了。发现了有些技术理念的问题: 第7个PPT的代码是用 JS 去设置 CSS,这与“不同浏览器解析DOM不同”没有任何关系,是CSS的兼容性!而且用JS去直接设样式是技术理念上的一个错误!
第9个PPT的代码是用DOM脚本编程,而不是用兼容性更好的表单 name 去取表单中的对象。好像没有 DOM 脚本编程就无法活了,不要什么都 XXX.getElementByXXX 方法。
第10个PPT的代码是用:
if(document.all){}else{}
而代码明明是addEventListener()方法,那为什么不这么写:
if(XXX.addEventListener){}else{}
理由请见army的译文《特性检测并非浏览器检测》。
呃,document.all(IE) 和 document.layer(NN) 一样是挺古的写法,我只在项目遗留的代码中见过一些踪迹,像阿当这样大量的使用真是头回见。
第19个PPT的代码是用匿名函数形成的JS闭包来产生临时的命名空间,这种方式本人通过与同行的沟通,发现只能在库的核心文件中用一次(见jQuery源码)。像他这样在页面中用了超过一次以上就可能是误用了。从他的代码中看,a 已经有了A与B的区别,就不会冲突了。
第25个PPT的代码中 set 方法 、read 方法取名得不成对,set 与 get 成对,read 与 write 成对。
ppt打包下载