随笔分类 - javascript
【javascript闭包】禅意之境--闭包上集
摘要:javascript禅意之境-闭包【上集】目录:一 垃圾收集趣史拓荒时代引用计数算法标记---清除算法复制算法走向成熟标记---整理算法增量收集算法分代收集算法应用浪潮大势所趋二 javascript垃圾收集机制介绍标记---清楚引用计数性能问题管理内存内存泄漏注明:有很多是借鉴前辈之文章,注明,因为这些已经写的挺好的,不想花过多的精力再去描述。 我这个人很直接,我也不怕得罪什么,不管是网上还是园子里对闭包的解释不是转载就是拿别人的东西当作自己的东西,这种不负责任的拿来主义我不知道对当事人有没有影响,但是对于很多的初学者来说,确是误导了他们。, 我查询了闭包文档的源头,是阮一峰翻译过来的,..
阅读全文
【javascript位置属性】window对象
摘要:对于javascript中各种位置属性,之前在写特效时是需要什么就用什么,还没有认认真真的系统的去总结下。在很多特效中位置属性起着举足轻重的作用。如果浏览器对每种属性的解释都相同,我们也不用浪费太多的精力,因为对于每一种属性,不同的浏览器有着不同的解释。 这篇文章涵盖了目前各种主流对象的各种位...
阅读全文
【事件】研习兼容各大浏览器的事件监听
摘要:区分标准和IE的事件监听的方法,分析其细微区别<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html> <head> <title> addEventListener </title> </head> <body> <script type="text/javascript"> fu
阅读全文
【事件】阻止事件的冒泡
摘要:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html> <head> <title> mm </title> <meta http-equiv="content-type" content="text/html;charset=UTF-8"/> </head> <bo
阅读全文
【ajax基础之一】读取txt文件内容
摘要:注意的问题: 1 在服务器中运行测试 2 注意编码的问题,编码要统一,否则读取的信息会乱码HTML代码:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html> <head> <title> New Document </title> <meta http-equiv="content-type" content
阅读全文
javascript的编译和执行的顺序
摘要:javascript和其他的语言有很多的不同之处,预编译就是其中之一,深挖进去会发现有很多的惊喜,同时也会让你明白其中让你迷惑的地方。 javascript代码是分段执行的,以 script为边界。在执行javascript代码段之前会对代码进行预编译。在预编译的过程中,引擎会对作用域内的变量进行声明,并且初始化为undefined,解析定义式函数【注意和匿名函数的区别】。直接上例题例1 mm=2; alert(mm); 弹出2 varmm=2; alert(mm); 弹出2这里大家都明白,不再多说例2alert(mm);mm=2; 错误提示,mm未定义我的个人理解是引擎在全...
阅读全文
javascript的私有机制
摘要:javascript中的私有成员翻译的外文,有些不对的地方请留言,谢谢javascript是世界上最令人误解的程序设计语言。有些程序员认为它缺少隐藏信息的属性因为javascript中的对象不能有私有的实体变量和方法。但是真正了解javascript这门语言的知道,javascript中的对象是可以含有私有的成员。下面详细的展开介绍。对象ObjectsJavascript是基于对象的语言。数组是对象,函数也是对象,可以说,一切都是对象。那什么是对象呢?对象是名值对的集合。变量名的类型是字符串,变量值类型可以是字符串类型,数值类型,布尔型,和对象(包括数组和函数)。对象通常实现的时候可以看作是哈
阅读全文
定义属于自己的函数的属性
摘要:当函数需要使用一个在调用过程中都保持不变的值时,使用Function对象的属性比定义全局变量【但是带来的坏处是使得名字空间变的更加的混乱】更加的方便。 例子: 例如我们想编写一个函数,但是我们在调用这个函数的时候,只会返回一个唯一的值,这个函数不能将同一个值重复的返回,为了达到这个目的,它需要保存已经返回的值,同时这个值在整个函数调用过程中都应该保持不变。可能有些人会想到我们可以用全局变量来表示,但是你要明白这个信息是由函数自己使用的,素以我们可以不必使用全局变量。我们知道js中有Function这个对象,因为对象都有自己的属性和方法,我们可以自定义属于函数的属性,说明白了就是把这个变量保..
阅读全文
对象属性用作函数的参数
摘要:当一个函数有很多个参数,同时假设这个项目的工程量很大,这些对于程序员来讲,要准确记住函数的形参列表的性质和顺序,这是有一定的难度的;为了方便我们在每次调用函数的时候,而不用反反复复的去查找文档,我们可以允许参数按照任意顺序以名字/键值的方式来进行传递,我想这会节省我们程序员很多的精力。 为了实现这种方法,我们把函数的参数定义为对象,接着,我们可以期待用户传递一个定义了包含了所需的名字/键值的对象直接量,这样很容易的进行操作,免去了我们很多的苦恼或者困惑。1functiongirl(a,b,c,d)2{3//code4}5functionboy(obj)6{7girl(obj.a,obj.b,.
阅读全文
arguments对象疑惑
摘要:对于这个对象的描述这里不再叙述太多,有些疑惑贴出来 测试A: function test(x) { alert(x); arguments[0]="2"; alert(x); } test(3); 第一次会弹出 3 第二次会弹出 2 测试B: function test(x) { alert(x);
阅读全文
浙公网安备 33010602011771号