Archive for the Category ECMAScript
Introduction
In this chapter we continue our consideration of lexical environments. In the previous sub chapter 3.1 we clarified the general theory related with the topic. In particular we have learned that the concept of environments is closely related with concepts of static scope and closures.
Read more »
July 26th, 2011 |
12 Comments |
3238 views
Category: ECMAScript |
Tags: Closure, declarative environment record, ECMA-262-5, environment record, Function Declaration, Function Expression, identifier resolution, lexical environment, name binding, object environment record, this binding, variable environment
This is an external article written specially for Opera software and placed on the Opera’s developer center website.
In this article we’ll look at the functionality made available by the new methods of array objects standardized in ECMA-262 5th edition (aka ES5). Most of the methods discussed below are higher-order (we’ll clarify this term shortly below), and related to functional programming. In addition, most of them have been added to different JavaScript implementations since version 1.6 (SpiderMonkey), although these were only standardized in ES5.
Read more »
February 23rd, 2011 |
0 Comments |
1067 views
Category: ECMAScript |
Tags: array extras, arrays, ECMA-262, ECMAScript 5, filter, foreach, JavaScript, map
Read this article in: English, Chinese, Japanese, German, Arabic, Korean, French.
Данная обзорная лекция является обобщением того, что мы изучили в курсе “Тонкости ECMA-262-3“. Каждый раздел статьи содержит ссылки на соответствующие главы цикла ES3, который вы, в случае желания и интереса, можете рассмотреть подробно, получив более глубокие и детальные описания тем.
Read more »
January 18th, 2011 |
28 Comments |
31755 views
Category: ECMAScript |
Tags: ECMA-262-3, ECMAScript, JavaScript, Scope chain, this, Замыкание, контекст исполнения, Объект активации, Объект переменных, ООП, Прототип, Фунарг
Introduction
In this chapter we’ll talk in detail about lexical environments — a mechanism used in some languages to manage the static scoping. In order to understand this concept completely, we’ll also discuss briefly the alternative — dynamic scoping (which though isn’t used directly in ECMAScript). We’ll see how environments help to manage lexically nested structures of a code and to provide complete support of closures.
Read more »
December 12th, 2010 |
19 Comments |
4626 views
Category: ECMAScript |
Tags: activation record, call-stack, Closure, dynamic scope, ECMA-262-5, environment frame, Funarg, lexical environment, lexical scope, name binding, static scope
Read this article in: Chinese, Japanese, German, Arabic, Russian, Korean, French.
This note is an overview and summary of the “ECMA-262-3 in detail” series. Every section contains references to the appropriate matching chapters so you can read them to get a deeper understanding.
Read more »
September 2nd, 2010 |
47 Comments |
41449 views
Category: ECMAScript |
Tags: Activation object, ECMA-262-3, ECMAScript, execution context, JavaScript, OOP, Scope chain, this, Variable object, [[Scope]]
Introduction
In this chapter we will concentrate on another innovation of the ECMA-262-5. The topic of the discussion is a strict variant (or strict mode) of an ECMAScript program. We’ll discuss the reasons for providing this feature, how it affects on some already existing semantic aspects and what can it restrict.
Read more »
June 1st, 2010 |
16 Comments |
6386 views
Category: ECMAScript |
Tags: Direct eval call, ECMA-262-5, ECMAScript, Indirect eval call, Strict mode
Introduction
This chapter is devoted generally to one of new concepts of the ECMA-262-5 specification — to property attributes and mechanism of their handling — property descriptors.
Usually saying that “an object has some property” we mean an association between a property name and its value. But as we know from the ES3 analysis, a property structure is more complex than just a string name. It also has set of attributes — those which we already discussed in ES3, e.g. {ReadOnly}, {DontEnum} and other. So from this viewpoint a property is as an object itself.
Read more »
April 28th, 2010 |
11 Comments |
5771 views
Category: ECMAScript |
Tags: Accessor property, Data property, ECMA-262-5, ECMAScript, Property, Property Descriptor, Property Identifier
We have finished analysis of the most important parts and theoretical aspects concerning 3rd edition of the ECMA-262 specification, i.e. standard devoted ECMAScript programming language. We have done and achieved a lot. Originally written in Russian, this series after more than half an year has been translated to several languages, what allowed this information to be shared with JavaScript developers and with everyone who interested in deep ECMAScript allover the world.
Read more »
April 27th, 2010 |
3 Comments |
2834 views
Category: ECMAScript |
Tags: ECMA-262-5, ECMAScript
Read this article in: Russian.
Introduction
In this small note we will consider strategy of passing arguments to functions in ECMAScript.
Generally this section of a computer science is called evaluation strategy, i.e. set of rules for evaluation and calculation some expressions in programming language. Strategy of passing arguments to function is its special case.
Read more »
April 10th, 2010 |
13 Comments |
3937 views
Category: ECMAScript |
Tags: by reference, by sharing, by value, ECMA-262-3, ECMAScript, Evaluation strategy
Read this article in: Russian, Chinese (version 1, version 2).
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 influences variables object of a context and what is contained in the scope chain of each function.
Read more »
April 5th, 2010 |
15 Comments |
9391 views
Category: ECMAScript |
Tags: ECMA-262-3, ECMAScript, Function Declaration, Function Expression, Function Statement