说说掌握JavaScript语言的思想前提想学习js的朋友可以看看


Posted in Javascript onApril 01, 2009

潜意识里也就不会用面向对象的思想去编写JavaScript代码,也很少会去深入了解prototype, closures等概念。这导致书写的代码经常很糟糕。 

       对于JavaScript的学习,可能最重要的还是要从思想上认识到JavaScript不是玩具语言。JavaScript的作用远不止增加点表单验证,我们可以看看GMail、看看Google Maps,如果开发者们没有对JavaScript足够尊敬,是不大可能写出如此优秀的Web应用的。 

       JavaScript门槛很低,但门槛低并不意味着容易掌握。一定程度上,JavaScript的入门容易以及其极大的灵活性,使得要掌握 JavaScript变得很难。从纯语言上讲,我个人的经验是,学习 JavaScript比学习Java更具挑战性。我们大多习惯了传统的面向对象表述方式,一定程度上甚至会认为类、封装、继承等概念都得像Java、 C++那样,可能都从来没想过没有class, extend, override等概念也能面向对象。JavaScript的面向对象打破了这种思想上的禁锢:世界是多样性的,条条大路通罗马。夸张一点说,深入学习 JavaScript,更多的是一种思想上的挑战,能活跃思路,扩大视野,甚至改变对世界的看法。 

       上面所说的这些,无意于夸大JavaScript的作用和难度。每个人都或多或少的会强调自己所学的知识,但在这里,我希望自己能很客观的传递一个观点:无论什么语言,想要精通,都很不容易;如果想学习某门语言,就得从思想上尊敬这门语言,在尊敬的基础上去学习,才有可能掌握这门语言的精髓。除了JavaScript,再举个HTML的例子: 

       经常能听到这样的话:HTML多容易,花个一两天也就会了。我自己也曾这么认为。但随着使用HTML经验的增长,慢慢感觉到, 对于Web前端开发来说,HTML可以说是最难的。HTML4.01规范中的91个元素就如汉字里的2500个常用字一样,我们读完小学后对常用字应该就都认识了,但要用汉字写篇优秀的文章,却并不容易。HTML也是这样,大部分宣称HTML很容易的开发者,往往只停留在认识body, p, form, table, div, ul等标签上,对于dl, legend, sub, caption等并非生僻的标签甚至都不认识。在常用字还认不全的情况下,宣称HTML很容易,真的很狂妄。(HTML的难度在于如何利用标签构建出结构 良好且富含语义的代码,就如写作文一样,不能认为认识几个字就自信能妙笔生花。) 

       总之,语言无贵贱难易,要从思想上尊敬重视一门语言,才有可能驾驭它,否则,将永远游离在专业程序员的宝殿之外。

Javascript 相关文章推荐
各浏览器对link标签onload/onreadystatechange事件支持的差异分析
Apr 27 Javascript
Angularjs 基础入门
Dec 26 Javascript
JQuery中绑定事件(bind())和移除事件(unbind())
Feb 27 Javascript
javascript实现验证IP地址等相关信息代码
May 10 Javascript
JavaScript中的this关键字使用详解
Aug 14 Javascript
JavaScript严格模式详解
Jan 16 Javascript
JavaScript实现事件的中断传播和行为阻止方法示例
Jan 20 Javascript
Vue实现一个返回顶部backToTop组件
Jul 25 Javascript
Angular.js中数组操作的方法教程
Jul 31 Javascript
使用Angular CLI生成 Angular 5项目教程详解
Mar 18 Javascript
javascript对HTML字符转义与反转义
Dec 13 Javascript
vue router导航守卫(router.beforeEach())的使用详解
Apr 19 Javascript
setTimeout 不断吐食CPU的问题分析
Apr 01 #Javascript
js Flash插入函数免激活代码
Mar 31 #Javascript
响应鼠标变换表格背景或者颜色的代码
Mar 30 #Javascript
用JavaScript实现单继承和多继承的简单方法
Mar 29 #Javascript
javascript 极速 隐藏/显示万行表格列只需 60毫秒
Mar 28 #Javascript
一个tab标签切换效果代码
Mar 27 #Javascript
js onpropertychange输入框 事件获取属性
Mar 26 #Javascript
You might like
PHP+Mysql基于事务处理实现转账功能的方法
2015/07/08 PHP
浅析php静态方法与非静态方法的用法区别
2016/05/17 PHP
php、mysql查询当天,查询本周,查询本月的数据实例(字段是时间戳)
2017/02/04 PHP
laravel5.4生成验证码的实例讲解
2017/08/05 PHP
JS格式化数字金额用逗号隔开保留两位小数
2013/10/18 Javascript
js判断客户端是iOS还是Android等移动终端的方法
2013/12/11 Javascript
node.js中的url.parse方法使用说明
2014/12/10 Javascript
javascript数据结构与算法之检索算法
2015/04/04 Javascript
jQuery往返城市和日期查询实例讲解
2015/10/09 Javascript
JavaScript小技巧整理篇(非常全)
2016/01/26 Javascript
全面理解JavaScript中的闭包
2016/05/12 Javascript
Node.js DES加密的简单实现
2016/07/07 Javascript
利用CSS、JavaScript及Ajax实现图片预加载的方法
2016/11/29 Javascript
浅谈webpack组织模块的原理
2018/03/10 Javascript
JavaScript代码实现txt文件的上传预览功能
2018/03/27 Javascript
浅谈vue项目4rs vue-router上线后history模式遇到的坑
2018/09/27 Javascript
vue 项目地址去掉 #的方法
2018/10/20 Javascript
Postman无法正常返回结果问题解决
2020/08/28 Javascript
[16:43]Heroes19_剃刀(完美)
2014/10/31 DOTA
学习python (1)
2006/10/31 Python
分享15个最受欢迎的Python开源框架
2014/07/13 Python
python利用装饰器进行运算的实例分析
2015/08/04 Python
python pandas中DataFrame类型数据操作函数的方法
2018/04/08 Python
Python装饰器知识点补充
2018/05/28 Python
详解10个可以快速用Python进行数据分析的小技巧
2019/06/24 Python
python爬虫库scrapy简单使用实例详解
2020/02/10 Python
使用Keras构造简单的CNN网络实例
2020/06/29 Python
Python是怎样处理json模块的
2020/07/16 Python
canvas学习笔记之绘制简单路径
2019/01/28 HTML / CSS
HTML5 Canvas 实现圆形进度条并显示数字百分比效果示例
2017/08/18 HTML / CSS
村主任“四风”问题个人对照检查材料思想汇报
2014/10/02 职场文书
见习报告格式范文
2014/11/08 职场文书
中标通知书范本
2015/04/17 职场文书
导游词之金鞭溪风景区
2019/09/12 职场文书
Opencv中cv2.floodFill算法的使用
2021/06/18 Python
浅谈Python协程asyncio
2021/06/20 Python