Показать сообщение отдельно
  #7 (permalink)  
Старый 28.01.2012, 21:54
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

function XFunction(args, body) {
	var func = Function(args, body);
	func.__proto__ = Object.create(XFunction.prototype);
	return func;
}

XFunction.prototype = Object.create(Function.prototype);

var f = new XFunction("", "return 1");

Function.prototype.test = function () {
	return 2;
};

XFunction.prototype.xTest = function () {
	return 3;
};

console.log(f());                    //1
console.log(f.test());               //2
console.log(f.xTest());              //3
console.log("apply" in f);           //true
console.log(f instanceof Function);  //true
console.log(f instanceof XFunction); //true


В IE7-9 не работает
Ответить с цитированием