Note 1. ECMAScript. Bound functions.
As we know, ECMA-262-5 standardized “bind” method of the “Function.prototype”. The source of the current version of this method is “Prototype.js” library, although, the standardized version has several differences. This approach is well known and was successfully used in ES3, so the main purpose of the current note is to show the technical details and differences (which can cause confusing) of the ES5 implementation.
Read more »
Note 0. Intro.
The “Notes” section is just a collection of small notes, which are not required a big complete chapter or if the topic of a discussion does not touch exactly some fundamental aspects. Nevertheless, being not about fundamental topics, the notes will describe some essential questions. They can be small or still detailed.
Read more »
ECMA-262-5 in detail. Chapter 2. Strict Mode.
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 »
ECMA-262-5 in detail. Chapter 1. Properties and Property Descriptors.
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 we already discussed in ES3, e.g. {ReadOnly}, {DontEnum} and other. So from this viewpoint a property is as an object itself.
Read more »
ECMA-262-5 in detail. Chapter 0. Introduction.
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 colleagues and with everyone who interested in deep ECMAScript allover the world.
Read more »
ECMA-262-3 in detail. Chapter 8. Evaluation strategy.
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 »
ECMA-262-3 in detail. Chapter 5. Functions.
Read this article in: Russian, Chinese.
Introduction
In this article we will more in detail talk about one of general ECMAScript objects — about functions. In particular, we will consider various types of functions, will define how this or that type influences variables object of a context and what contains a scope chain of a certain type of function.
Read more »
ECMA-262-3 in detail. Chapter 4. Scope chain.
Read this article in: Russian, Chinese.
Introduction
As we already know from the second chapter concerning the variable object, the data of an execution context (variables, function declarations, and formal parameters of functions) are stored as properties of the variables object.
Read more »
ECMA-262-3 in detail. Chapter 2. Variable object.
Read this article in: Russian, Chinese (version1, version2).
Introduction
Always in programs we declare functions and variables which then successfully use building our systems. But how and where the interpreter finds our data (functions, variable)? What occurs, when we reference to needed objects?
Read more »
