Показать сообщение отдельно
  #50 (permalink)  
Старый 08.05.2013, 22:57
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

В моей функции возможна асинхронность и изолированность (при желании).

Немного об изолированности. Скажем, у нас есть некая библиотека, написанная сторонним разработчиком, и которая использует объект window, но, на самом деле, в нем не нуждается:
// lib.js
window.method1 = function() { /*1*/ };
window.method2 = function() { /*2*/ };

В таком случае можно заменить window на собственный объект, который служит пространством имен:
var lib = {};
require( 'lib.js', function() {
	console.log( window.method1, window.method2 ); //undefined undefined
	console.log( lib.method1, lib.method2 ); //function() { /*1*/ } function() { /*2*/ }
}, { window: lib } );

Еще раз повторюсь, функция выложена в ознакомительных целях и просто-напросто показывает, что в JS можно сделать «еще и так».
__________________
"Matreshka is fucking awesome" © чувак с Reddit
Matreshka.js - Три возможности
Ответить с цитированием