В чем отличие bind от call и apply? 
		
		
		
		Подскажите, пожалуйста. Буду крайне признателен, а то сам не разобрался. 
	 | 
	
		
 Цитата: 
	
 Цитата: 
	
  | 
	
		
 Понял спасибо. 
	 | 
	
		
 Цитата: 
	
 Заранее Вам благодарен!  | 
	
		
 bind нужен скорее для того, чтобы не использовать постоянно call и сам по себе легко эмулируется. 
	Например можно написать так: id = document.getElementById.bind(document); А дальше просто использовать 
id('some-id');
 вместо постоянного id.call(document,'some-id'); Кстати в ie это магическим образом работает более чем в 2 раза быстрее чем просто 
document.getElementById('some-id')
. 0_о | 
	
		
 Цитата: 
	
  | 
	
		
 Цитата: 
	
 http://jsperf.com/getelementbyid-vs-queryselector/33  | 
	
		
 jekahm, http://learn.javascript.ru/bind 
	 | 
	
		
 Есть еще вопрос! Почему в примере ниже (я нашел его на этом сайте) для метода double bind используется, а для sum - нет? 
	
function Example(x, y){
  this.x = x;
  this.y = y;
};
Example.prototype.sum = function(){
  return this.x + this.y;
};
Example.prototype.double = function(){
// Вместо for(var key in this) if(this.hasOwnProperty(key)) ...
  Object.keys( this )
// Получаем массив, к которому и применяем новые методы
        .forEach( function( key ){
// this "потерялся" бы, но...
          this[ key ] = this[ key ] * 2;
// У функций тоже есть новое
        }.bind(this) );
  return this;
};
 
var example = new Example(3, 7);
alert( example.sum() );
example.double();
alert( example.sum() );
 | 
	
		
 Цитата: 
	
 Логичным был бы вопрос - зачем использовать функцию bind в методе double. Но ведь ответ дан в комментариях. Почитай про this в javascript (об этом уже много написано) чтобы не задавать такие вопросы.  | 
| Часовой пояс GMT +3, время: 12:48. |