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扩展插件Validate—4设置错误提示的样式
Sep 05 Javascript
缓动函数requestAnimationFrame 更好的实现浏览器经动画
Dec 07 Javascript
JavaScript SetInterval与setTimeout使用方法详解
Nov 15 Javascript
JavaScript作用域与作用域链深入解析
Dec 06 Javascript
把jQuery的类、插件封装成seajs的模块的方法
Mar 12 Javascript
js实现文本框选中的方法
May 26 Javascript
js中javascript:void(0) 真正含义
Nov 05 Javascript
JS组件Bootstrap Select2使用方法详解
Apr 17 Javascript
Bootstrap整体框架之CSS12栅格系统
Dec 15 Javascript
JavaScript 事件流、事件处理程序及事件对象总结
Apr 01 Javascript
js实现图片粘贴上传到服务器并展示的实例
Nov 08 Javascript
教你30秒发布一个TypeScript包到NPM的方法步骤
Jul 22 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.MVC的模板标签系统(二)
2006/09/05 PHP
使用php get_headers 判断URL是否有效的解决办法
2013/04/27 PHP
Yii2实现跨mysql数据库关联查询排序功能代码
2017/02/10 PHP
PHP流Streams、包装器wrapper概念与用法实例详解
2017/11/17 PHP
总结PHP中初始化空数组的最佳方法
2019/02/13 PHP
javascript 操作文件 实现方法小结
2009/07/02 Javascript
一个简单的js树形菜单
2011/12/09 Javascript
Javascript操作cookie的函数代码
2012/10/03 Javascript
禁止ajax缓存获取程序最新数据的方法
2013/11/19 Javascript
JavaScript获得页面base标签中url的方法
2015/04/03 Javascript
JQuery实现超链接鼠标提示效果的方法
2015/06/10 Javascript
第十篇BootStrap轮播插件使用详解
2016/06/21 Javascript
JS实现图片高斯模糊切换效果的焦点图实例
2017/01/21 Javascript
js实现适合新闻类图片的轮播效果
2017/02/05 Javascript
vue 实现 tomato timer(蕃茄钟)实例讲解
2017/07/24 Javascript
VueJS组件之间通过props交互及验证的方式
2017/09/04 Javascript
vue translate peoject实现在线翻译功能【新手必看】
2018/06/07 Javascript
基于Vue-cli快速搭建项目的完整步骤
2018/11/03 Javascript
详解微信小程序获取当前时间及日期的方法
2019/04/28 Javascript
js实现数字从零慢慢增加到指定数字示例
2019/11/07 Javascript
react的hooks的用法详解
2020/10/12 Javascript
python转换摩斯密码示例
2014/02/16 Python
Python的Flask站点中集成xhEditor文本编辑器的教程
2016/06/13 Python
Python单体模式的几种常见实现方法详解
2017/07/28 Python
Python使用修饰器执行函数的参数检查功能示例
2017/09/26 Python
Django中使用Celery的方法示例
2018/11/29 Python
Python中@property的理解和使用示例
2019/06/11 Python
python隐藏类中属性的3种实现方法
2019/12/19 Python
Python Numpy库常见用法入门教程
2020/01/16 Python
numpy 矩阵形状调整:拉伸、变成一位数组的实例
2020/06/18 Python
大学生村官个人对照检查材料(群众路线)
2014/09/26 职场文书
2014年审计工作总结
2014/11/17 职场文书
民主生活会汇报材料
2014/12/15 职场文书
学习焦裕禄先进事迹心得体会
2016/01/23 职场文书
导游词之上饶龟峰
2019/10/25 职场文书
Java新手教程之ArrayList的基本使用
2021/06/20 Java/Android