天天看点

我知道的前端开发(二)

3)JavaScript

如果把前端比作一个美人,html只是躯体的话,CSS就是胭脂水粉,绫罗绸缎,那么JS就是让美人活起来的灵魂;昨天我们看了HTML,CSS,今天我们就看一下能够化腐朽为神奇的JS。

很久之前,JS作为一种脚本语言被边缘化,一直被认为只能在页面上弹个小广告的的鸡肋语言,Ajax的盛行让人彻底对JS的功用有了改观,从过去的名不见经传,到现在已经是无处不在,无所不能,从前端到后台,从简单界面操作,到游戏引擎开发,从网游到本地应用再到手机APP的开发,可以说是无所不包,微软,谷歌等都开发了自己的类JS语言TypeScript,Dart,还有现在很火的CoffeeScript。说到JS,不得不说得一点是它是一种弱类型的,基于原型的语言,这使得在对象继承方面有天然的优势。现在我们梳理下JS中特别重要的几个点:JS中事件处理机制是怎样的,addEventListener()第三个参数代表什么含义,冒泡和时间捕获有什么异同,如何处理在绑定事件时的浏览器兼容性问题;在JS中创建对象的模式有哪几种,对应的对象的继承又都有什么,各方法都有什么优势和缺陷;在JS中函数做为一等公民主要表现在哪些地方,函数的调用方法都有哪些,call和apply的异同又有哪些,主要用在什么场景下;JS中闭包是怎么一回事,他的主要应用场景都有哪些,JS是如何进行模块化的,常见的模块化规范又有哪些;函数的级联(函数的链式调用)是如何做到的,this对象与其他语言之间又有哪些不同;JS中作用域链是怎么一回事儿(接下来会介绍),作用域链的处理不当会引发哪些问题,内存泄漏是怎么一回事,JS中常用的垃圾回收算法有哪些;DOM操作常用的方法有哪些,如何减少在DOM操作过程中浏览器的refresh和repaint,JQ的选择器函数是如何进行封装的,除了getElement*三种方法之外,还有哪些元素选择的方法,这些方法的浏览器支持是怎样的;跨域的方法有哪些,jsonp方法有哪些局限性;其他的像JS的基本数据类型,数据类型之间的转换都是常识性的东西。

下面给大家介绍一篇讲解作用域链比较经典的文章:

水平有限,欢迎大家批评指正

Q,403053150