JS的深入总结

什么是JavaScript


JavaScript库中主要包含一些常用的函数,我们都使用过JQuery,它们虽然不是JavaScript语言的一部分,但是使用这些经过验证的可靠的函数会使你的代码更清晰,更易读,而且当别人需要调试或搞懂你的开发成果时更容易被人理解.


编写自己的JavaScript库时的注意事项


1,不要版本检测--使用能力检测


浏览器的版本很容易被淘汰而且种类繁多,我们不可能为了市面上每一款前途未卜的浏览器都花费实践去检测.

作为浏览器检测的方法的最佳实践是能力检测,指的是在代码执行之前检测某个脚本对象或方法是否存在,而不是依赖于你对哪个浏览器具有哪些特定的了解.如果方法或对象存在,那么浏览器能够使用它,且代码也可以按照预期执行.

方法:


 

2,使用命名空间


在设计类和类成员过程中,不可避免的类成员中的方法或者类的名称会出现相同的情况,这样就会使类的使用变得复杂,代码的混乱造成可读性降低,使用命名空间可以解决此类难题。而要避免这些问题的困扰,只需要记住两点:唯一性,不共享.

唯一性:为自己的命名空间挑选一个不会在别处被使用的名字.

不共享:1,闭包2,保证你的代码被包含在它自己的小空间中.

 


 

闭包:

闭包就是能够读取其他函数内部变量的函数。

由于在Javascript语言中,只有函数内部的子函数才能读取局部变量,因此可以把闭包简单理解成“定义在一个函数内部的函数”。

1,闭包外层是个函数.

2,闭包内部都有函数.

3,闭包会return内部函数.

4,闭包返回的函数内部不能有return.(因为这样就真的结束了)

5,执行闭包后,闭包内部变量会存在,而闭包内部函数的内部变量不会存在.

 

闭包博客链接:http://www.jb51.net/article/24101.htm

 

作用域链:

作用域链作用:

Javascritp需要查询变量x的值时,它首先开始查询作用域链的第一个对象,如果该对象有名为x的属性,就采用这个值,如果没有,就查询作用域链上的第二个对象,以此类推。

作用域链的顺序:

根据执行环境来定,假设当前执行环境在两层嵌套的局部函数中,当前函数的调用对象处于作用域链第一位,外层函数调用对象在作用域链第二位,然后再外面的全局对象在第三位。

 

面向对象成员方法:


静态方法:指的是只能给某个特定的对象赋值,不能重用,即我们直接添加到了对象实例中。静态成员只存在于对象的一个具体实例而不存在于构造函数中。

公有方法:构造函数中this赋值也是一种。即能够使实例化的对象包含的方法称为公有方法,需要修改函数原型,即prototype属性。要添加公有方法只需要使用点操作符向它的原型添加方法即可

私有方法:就是在构造函数中定义的变量和函数。

特权方法:即this方法,可以访问私有成员

 

call()apply()方法:


这两个方法可以指定函数的执行环境。即将一个方法强行绑定到一个对象上,返回执行结果

call()apply()方法的区别为当执行的方法是有参数的,call是将每一个参数逐一列举出来,而apply()方法是将参数作为一个数组放在第二个参数(第一个参数为对象)的位置上。

 

DOM文件对象模型(Document Object Model,简称DOM


支持对HTMLXML的操作.让我们可以通过JavaScript,以编程方式控制网页上的所以元素和属性。DOM的主要思想是HTML上每个元素分别对应于DOM中的一个节点。

 



 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 47
    评论
评论 47
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值