再读ecmascript
摘要: 这几天,又花了点时间看了下ecmascript。以下是我摘录出来的一些理解。在此记录下。第一部分:关于变量对象的理解1) 什么是变量对象?数据的存取与读取机制,就是变量对象。 变量对象 是执行上下文相关的对象,包括3种:变量 (var )函数定义(FD)函数形参2) 关于函数的argumentsfunction foo(x,y,z){ z=40; y=50; alert(arguments.callee===foo); alert(arguments.length); //1 alert(arguments[1]); //undefine alert(arguments[2]); //und.阅读全文
?
javascript 中的 arguments,callee.caller,apply,call 区别
摘要: 记录一下:1.arguments是一个对象, 是函数的一个特性,只有在函数内才具有这个特性,在函数外部不用使用。举例:function test(){ alert(typeof arguments); //object } alert(typeof arguments); //undefined2.callee,callercallee 表示当前正在使用的函数,例如 arguments.callee 表示testcaller 表示当前函数的调用者,如果在最顶层 那么就为 null ,如 test() 为 null ;test2() 为testfunction test(){ aler...阅读全文
?
js 设计模式-单例模式
摘要: 本文参考:http://www.addyosmani.com/resources/essentialjsdesignpatterns/book /#singletonpatternjavascript目录: 1)什么是单例 2)使用场景 3)类比 3)举例什么是单例? 单例要求一个类有且只有一个实例,提供一个全局的访问点。因此它要绕过常规的控制器,使其只能有一个实例,供使用者使用,而使用着不关心有几个实例,因此 这是设计者的责任 In JavaScript, Singletons serve as a shared resource namespace which isolate im...阅读全文
?
深入理解JavaScript内部原理(6): 闭包
摘要: 说明本文是翻译http://dmitrysoshnikov.com/ecmascript/chapter-6-closures/概要本文将介绍一 个在JavaScript经常会拿来讨论的话题 ——闭包(closure)。闭包其实已经是个老生常谈的话题了; 有大量文章都介绍过闭包的内容(其中不失一些很好的文章,比如,扩展阅读中Richard Cornford的文章就非常好), 尽管如此,这里还是要试着从理论角度来讨论下闭包,看看ECMAScript中的闭包内部究竟是如何工作的。正如在此前文章中提到的,这些文章都是系列文 章,相互之间都是有关联的。因此,为了更好的理解本文要介绍的内容, 建议先去阅读下阅读全文
?
深入理解JavaScript内部原理(5): function
摘要: 本文是翻译http://dmitrysoshnikov.com/ecmascript/chapter-5-functions /#introduction概要In this article we will talk about one of the general ECMAScript objects — about functions. In particular, we will go through various types of functions, will define how each type influencesvariables objectof a context and阅读全文
?
深入理解JavaScript内部原理(3): this
摘要: 本文是翻译http://dmitrysoshnikov.com/ecmascript/chapter-3-this/概要本文将进一步讨论与执行上 下文密切相关的概念——this关键字。事实证明,this这块的内容非常的复杂,它在不同执行上下文的情况下其值都会不同,并且会相应的引发一些问题。 很多程序员一看到this关键字,就会把它和面向对象的编程方式联系在一起,它指向利用构造器新创建出来的对象。在ECMAScript中,也支持 this,然而, 正如大家所熟知的,this不仅仅只用来表示创建出来的对象。接下来给大家揭开在ECMAScript中this神秘的面纱。定义This是执行上下文的 一个属性:a阅读全文
?
深入理解JavaScript内部原理(1): 执行上下文
摘要: 说明本文是翻译Dmitry Soshnikov 的文章Execution Contexts. 文章地址:http://dmitrysoshnikov.com/ecmascript/chapter-1-execution-contexts /概要在这篇文章中,我们将向大家介绍ECMAscript的可执行上下文以及相关的可执行上下文的类型定义每当控制器进入ECMAscript可执行代 码的时候,控制器就进入了一个可执行上下文。可执行上下文(简称EC)是一个抽象的概念,在ECMA262中用他来区分不同类型的可执行代码标准规范中并 没有从技术实现的角度来定义执行上下文的具体结构和类型;这是实现标准的ECMA阅读全文
?
浅谈javascript中的作用域
摘要: 首先说明一下:Js中的作用域不同于其他语言的作用域,要特别注意。JS中作用域的概念: 表示变量或函数起作用的区域,指代了它们在什么样的上下文中执行,亦即上下