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 相关文章推荐
使用js修改客户端注册表的方法
Aug 09 Javascript
jQuery插件开发精品教程(让你的jQuery更上一个台阶)
Nov 07 Javascript
JavaScript判断对象是否为数组
Dec 22 Javascript
关于获取DIV内部内容报错的原因分析及解决办法
Jan 29 Javascript
实例讲解使用原生JavaScript处理AJAX请求的方法
May 10 Javascript
AngularJS 路由和模板实例及路由地址简化方法(必看)
Jun 24 Javascript
jquery弹出框插件jquery.ui.dialog用法分析
Aug 20 Javascript
Ionic + Angular.js实现图片轮播的方法示例
May 21 Javascript
在vue.js中抽出公共代码的方法示例
Jun 08 Javascript
easyui简介_动力节点Java学院整理
Jul 14 Javascript
three.js 利用uv和ThreeBSP制作一个快递柜功能
Aug 18 Javascript
JavaScript原生数组函数实例汇总
Oct 14 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+mysql写的简单留言本实例代码
2008/07/25 PHP
PHP调用MySQL的存储过程的实现代码
2008/08/12 PHP
MySQL的FIND_IN_SET函数使用方法分享
2012/03/27 PHP
ThinkPHP中处理表单中的注意事项
2014/11/22 PHP
又十个超级有用的PHP代码片段
2015/09/24 PHP
php微信公众号开发之图片回复
2018/10/20 PHP
基于jQuery的消息提示插件 DivAlert之旅(二)
2010/04/01 Javascript
JS自动缩小超出大小的图片
2012/10/12 Javascript
Javascript中的Array数组对象详谈
2014/03/03 Javascript
angularJS中$apply()方法详解
2015/01/07 Javascript
JavaScript中获取时间的函数集
2016/08/16 Javascript
bootstrap fileinput完整实例分享
2016/11/08 Javascript
浅析JavaScript中break、continue和return的区别
2016/11/30 Javascript
JavaScript 事件对内存和性能的影响
2017/01/22 Javascript
jQuery获取复选框选中的当前行的某个字段的值
2017/09/15 jQuery
深入理解Vue2.x的虚拟DOM diff原理
2017/09/27 Javascript
vue3 源码解读之 time slicing的使用方法
2019/10/31 Javascript
Vue中错误图片的处理的实现代码
2019/11/07 Javascript
vue 动态添加的路由页面刷新时失效的原因及解决方案
2021/02/26 Vue.js
[02:37]2015国际邀请赛选手档案—LGD.Xiao8
2015/07/28 DOTA
从零学Python之hello world
2014/05/21 Python
python中input()与raw_input()的区别分析
2016/02/27 Python
Python3实现发送QQ邮件功能(文本)
2017/12/15 Python
pandas 选取行和列数据的方法详解
2019/08/08 Python
python matplotlib库直方图绘制详解
2019/08/10 Python
python使用pip安装SciPy、SymPy、matplotlib教程
2019/11/20 Python
Python 限定函数参数的类型及默认值方式
2019/12/24 Python
python实现录屏功能(亲测好用)
2020/03/02 Python
美国气象仪器、花园装饰和墙壁艺术商店:Wind & Weather
2019/05/29 全球购物
双十佳事迹材料
2014/01/29 职场文书
放飞蜻蜓反思
2014/02/05 职场文书
科技工作者先进事迹
2014/08/16 职场文书
网络工程专业大学生求职信
2014/10/01 职场文书
房屋租赁委托书范本
2014/10/04 职场文书
JavaScript原型链详解
2021/11/07 Javascript
Redis实现分布式锁的五种方法详解
2022/06/14 Redis