瘦人说

《Dive Into JavaScript》Session 1

《Dive Into JavaScript》Session系列是我组织的一个JavaScript技术分享讨论会,属于我和给力的前端开发@Zation组织的前端分享平台的一部分,这个平台主旨是想把前端开发知识传播给更多人知道,希望有更多人加入前端开发来和我们一起探讨问题,追求最佳实践。

今天是第一次分享,ppt传送门在此,http://winsonwq.github.com/ppt/JavaScript-Session1.html#/cover。本来想按照语言介绍流程,先讲语法,接着讲下结构,比如if/else,switch,for/while怎么写之类的。讲这些有意思么?没有。在我看来,很多人都对JavaScript中prototype-based部分理解的不够深刻,甚至完全摸不着头脑,那我们今天就啃这块硬骨头,这样对之后的课程理解也有很大帮助。

在session,我的目的是让大家回答这么两个问题

  1. Object.prototype上扩展的属性和方法,为什么所有对象上都能感知到?
  2. Function.prototype上扩张的属性和方法,为什么只有方法对象能感知到?
    例如:Function.prototype.isAFunc = true; Array.isAFunc === true; // true

这次讲的主要内容:

  1. JavaScript/ECMAScript 简介
  2. JavaScript 对象Function, Object
  3. 三个重要属性介绍,constructor、prototype、__proto__
  4. 对象关系(包括方法对象)

有可能是直接第一次分享就讲较为复杂的部分,大家听下来都有点晕。但我觉得,晕了才能有不晕的一天,而且这次直接讲原型继承真是我用心良苦啊,希望大家在之后的讨论中能更快的理解。也非常欢迎大家给我feedback,期待中。(已经收到一些,下次会改进)

下次讨论将会在下下个星期,那天还不定,《Dive Into JavaScript》Session 2的内容可能是对象API的介绍、类式继承的介绍、随之而来的将会是BOM、DOM的介绍。之后还会有更多的惊喜,只愿给我一个平台我分享我所学。

上次会成都,徐昊(TW中国首席咨询师)问了我一个问题,你现在是UI开发,如果有一天,假如3年,大家自学或者受你影响,他们的UI水平和你差不多了,你会怎么办?我想了想,回答说,我希望有那么一天,他们来帮我一起做现在做的事情,提高效率的同时,我可以有更多的时间专研我想学的东西。

-完-

Comments

Proudly published with Hexo