JavaScript初学者建议:不要去管浏览器兼容


Posted in Javascript onFebruary 04, 2014

如果可以回到过去的话,我会告诉自己这句话:"初学JavaScript的时候无视DOM和BOM的兼容性"

 我初学时的处境

在我初学JavaScript的时候最头痛的就是浏览器兼容问题。在Firefox下面好好的代码放到IE就不能显示了,又或者是在IE能正常显示的代码在firefox又报错了。

前端开发工程师的职责就包括跨浏览器开发。所以我就在还不了解JS这门语言本身的时候去花时间学习浏览器兼容知识,这样会让JS学习难度增加。但是不能兼容主流浏览器的代码不能用在实际项目中。

DOM和BOM的兼容性问题一度让我的JavaScript学习停滞不前。语言理解不够,代码又只能在特定浏览器运行。

 我的建议

如果你正初学JavaScript并有着和我一样的处境的话我建议你:初学JavaScript的时候无视DOM和BOM的兼容性,将更多的时间花在了解语言本身(ECMAScript)。只在特定浏览器编写代码(Chrome/Firefox/Safari),实际工作中使用成熟的JavaScript框架(jQuery等)。放心,很少有公司会让JS新手用原生JS做前端开发。

学习JS初期无视兼容问题有什么好处

降低学习难度
减少挫败感
花更多的时间学习ECMAScript

 什么时候学习JS跨浏览器开发知识

而浏览器兼容问题留到什么时候解决呢?

当你能熟练使用JavaScript框架编写可复用的代码时(jQuery插件或前端控件),或当你准备自己开发一个JavaScript框架时。

 其他一些JavaScript初学者建议

千万不要拿JavaScript权威指南当入门书籍
应该用JavaScript高级程序设计(第三版)作为入门书籍
传值和传值、作用域知识必须理解
调试工具必须懂并多用,学会自己捕捉错误。(chrome developer tool/Firebug)
耐心再耐心,对每一个知识点深挖能学的更轻松。

以上就是我的一些分享希望若能帮助到初学JavaScript的你,如果觉得有误导的地方敬请立即指出。

Javascript 相关文章推荐
不使用浏览器运行javascript代码的方法
Jul 24 Javascript
浅谈JavaScript函数参数的可修改性问题
Dec 05 Javascript
Jquery在指定DIV加载HTML示例代码
Feb 17 Javascript
JavaScript iframe数据共享接口实现方法
Jan 06 Javascript
AngularJS使用指令增强标准表单元素功能
Jul 01 Javascript
第一次接触神奇的Bootstrap菜单和导航
Aug 01 Javascript
关于Iframe父页面与子页面之间的相互调用
Nov 22 Javascript
AngularJS实现select的ng-options功能示例
Jul 12 Javascript
vue使用Proxy实现双向绑定的方法示例
Mar 20 Javascript
对layui数据表格动态cols(字段)动态变化详解
Oct 25 Javascript
vue 判断页面是首次进入还是再次刷新的实例
Nov 05 Javascript
适用于 Vue 的播放器组件Vue-Video-Player操作
Nov 16 Javascript
21个值得收藏的Javascript技巧
Feb 04 #Javascript
Javascript 按位与运算符 (&)使用介绍
Feb 04 #Javascript
Javascript 按位与赋值运算符 (&=)使用介绍
Feb 04 #Javascript
Javascript 按位左移运算符使用介绍(
Feb 04 #Javascript
JavaScript按位运算符的应用简析
Feb 04 #Javascript
Javascript 按位取反运算符 (~)
Feb 04 #Javascript
jQuery操作CheckBox的方法介绍(选中,取消,取值)
Feb 04 #Javascript
You might like
php删除左端与右端空格的方法
2014/11/29 PHP
apache php mysql开发环境安装教程
2016/07/28 PHP
Yii全局函数用法示例
2017/01/22 PHP
PHP面向对象程序设计之对象的遍历操作示例
2019/06/12 PHP
asp 取文本框名称代码
2008/12/02 Javascript
jQuery的实现原理的模拟代码 -2 数据部分
2010/08/01 Javascript
Draggable Elements 元素拖拽功能实现代码
2011/03/30 Javascript
浅谈关于JavaScript的语言特性分析
2013/04/11 Javascript
javascript获取和判断浏览器窗口、屏幕、网页的高度、宽度等
2014/05/08 Javascript
jQuery 中$(this).index与$.each的使用指南
2014/11/20 Javascript
iframe中子父类窗口调用JS的方法及注意事项
2015/08/25 Javascript
JavaScript 冒泡排序和选择排序的实现代码
2016/09/03 Javascript
使用ReactJS实现tab页切换、菜单栏切换、手风琴切换和进度条效果
2016/10/17 Javascript
vue实现微信分享朋友圈,发送朋友的示例讲解
2018/02/10 Javascript
在vue项目中引入高德地图及其UI组件的方法
2018/09/04 Javascript
一些可能会用到的Node.js面试题
2019/06/15 Javascript
vue学习笔记之Vue中css动画原理简单示例
2020/02/29 Javascript
JavaScript实现放大镜效果代码示例
2020/04/29 Javascript
[40:05]DOTA2上海特级锦标赛A组小组赛#1 EHOME VS MVP.Phx第一局
2016/02/25 DOTA
python输出100以内的质数与合数实例代码
2018/07/08 Python
python监测当前联网状态并连接的实例
2018/12/18 Python
Python hexstring-list-str之间的转换方法
2019/06/12 Python
python实现tail -f 功能
2020/01/17 Python
必须要使用游标的SQL语句有那些
2012/05/07 面试题
元旦红领巾广播稿
2014/02/19 职场文书
工程安全员岗位职责
2014/03/09 职场文书
民生工程实施方案
2014/03/22 职场文书
史学专业毕业生求职信
2014/05/09 职场文书
结对共建工作方案
2014/06/02 职场文书
迎国庆演讲稿
2014/09/15 职场文书
校园运动会广播稿
2014/10/06 职场文书
法人身份证明书
2014/10/08 职场文书
2015年人事专员工作总结
2015/04/29 职场文书
个人向公司借款协议书
2016/03/19 职场文书
PyTorch dropout设置训练和测试模式的实现
2021/05/27 Python
Jedis操作Redis实现模拟验证码发送功能
2021/09/25 Redis