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 相关文章推荐
jQuery 对象中的类数组操作
Apr 27 Javascript
关于JavaScript的一些看法
May 27 Javascript
通过JavaScript使Div居中并随网页大小改变而改变
Jun 24 Javascript
JavaScript两种跨域技术全面介绍
Apr 16 Javascript
freemarker判断对象是否为空的方法
Aug 13 Javascript
jquery模拟实现鼠标指针停止运动事件
Jan 12 Javascript
jQuery实现鼠标跟随效果
Feb 20 Javascript
详解vue父子组件间传值(props)
Jun 29 Javascript
深入探究node之Transform
Jul 20 Javascript
JS点击图片弹出文件选择框并覆盖原图功能的实现代码
Aug 25 Javascript
Vue.js轮播图走马灯代码实例(全)
May 08 Javascript
vue-router路由模式详解(小结)
Aug 26 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
YB217、YB235、YB400浅听
2021/03/02 无线电
在laravel中使用Symfony的Crawler组件分析HTML
2017/06/19 PHP
tagName的使用,留一笔
2006/06/26 Javascript
js动态在form上插入enctype=multipart/form-data的问题
2012/05/24 Javascript
js判断鼠标同时离开两个div的思路及代码
2013/05/31 Javascript
Javascript 按位与运算符 (&)使用介绍
2014/02/04 Javascript
node.js中的fs.futimesSync方法使用说明
2014/12/17 Javascript
jQuery中live()方法用法实例
2015/01/19 Javascript
jQuery操作cookie
2016/08/08 Javascript
深入理解bootstrap框架之入门准备
2016/10/09 Javascript
用iframe实现不刷新整个页面上传图片的实例
2016/11/18 Javascript
JavaScript 中调用 Kotlin 方法实例详解
2017/06/09 Javascript
vue和小程序项目中使用iconfont的方法
2020/05/19 Javascript
Vue.js中Line第三方登录api的实现代码
2020/06/29 Javascript
python调用短信猫控件实现发短信功能实例
2014/07/04 Python
放弃 Python 转向 Go语言有人给出了 9 大理由
2017/10/20 Python
Pycharm+Scrapy安装并且初始化项目的方法
2019/01/15 Python
python之pymysql模块简单应用示例代码
2019/12/16 Python
python绘制封闭多边形教程
2020/02/18 Python
纯CSS3实现图片无间断轮播效果
2016/08/25 HTML / CSS
使用phonegap操作数据库的实现方法
2017/03/31 HTML / CSS
意大利综合购物网站:Giordano Shop
2016/10/21 全球购物
Currentbody澳大利亚:美容仪专家
2019/11/11 全球购物
本科生职业生涯规划书范文
2014/01/21 职场文书
市场安全管理制度
2014/01/26 职场文书
办公自动化毕业生求职信
2014/03/09 职场文书
护理人员的自我评价分享
2014/03/15 职场文书
《三顾茅庐》教学反思
2014/04/10 职场文书
小学生学雷锋演讲稿
2014/04/25 职场文书
三方股东合作协议书范本
2014/09/28 职场文书
师德先进个人事迹材料
2014/12/19 职场文书
PHP控制循环操作的时间
2021/04/01 PHP
Go语言空白表示符_的实例用法
2021/07/04 Golang
Logback 使用TurboFilter实现日志级别等内容的动态修改操作
2021/08/30 Java/Android
mongodb数据库迁移变更的解决方案
2021/09/04 MongoDB
手写实现JS中的new
2021/11/07 Javascript