>  기사  >  웹 프론트엔드  >  angle.bind 사용 경험_AngularJS

angle.bind 사용 경험_AngularJS

WBOY
WBOY원래의
2016-05-16 15:35:16929검색

angular.bind

설명: self를 호출하는 함수 fn을 반환합니다(self는 fn에서 이를 나타냄). 매개변수 args(*)를 fn에 제공할 수 있습니다. 이 함수는 함수를 구별하기 위해 로컬 연산이라고도 합니다.

형식: angle.bind(self,fn,args);

self: object object; fn에서 호출할 수 있는 fn의 컨텍스트 개체

fn: 함수 바인딩 방법

args: fn에 전달된 매개변수

  var obj = { name: "Any" };
  var fn = function (Adj) {
    console.log(this.name + "is a boy!!! And he is " + Adj + " !!!");
  };
  var f = angular.bind(obj, fn, "handsome");
  f();//Any is a boy!!! And he is handsome!!!
  var t = angular.bind(obj, fn);
  t("ugly");// Any is a boy!!! And he is ugly!!!

angular.bind에 대한 이해를 이야기해 볼까요~

bind는 이름에서 알 수 있듯이 바인딩을 의미하므로 A를 B에 바인딩하려면 A와 B라는 두 엔터티가 있어야 합니다. 여기에 필요한 두 엔터티는 개체와 함수입니다. 그럼 어떻게 묶어야 할까요? @Beast의 이해는 실행을 위해 함수의 this에 객체를 "연결"하는 것입니다. 세 번째 매개변수는 함수에 필요한 경우 선택 사항입니다. 매개변수를 전달하려면 fn 함수에 전달되는 매개변수인 angle.bind의 세 번째 매개변수를 입력하면 됩니다.

첫 번째 케이스 작성 방법은 바인딩 정의 시 fn에 필요한 매개변수를 전달하고 호출 시 직접 사용하는 것입니다. 두 번째 케이스 작성 방법은 먼저 바인딩한 후 호출할 때 사용하는 것입니다. 실행 시 매개변수를 fn에 전달해도 동일한 효과가 있습니다

위의 영어 문장(글쎄요, 문장이 2개뿐이지만)에 틀린 부분이 있다면 우리가 모국어인 중국어를 깊이 사랑한다는 의미입니다. 실수로 올바르게 썼다면 이 박수를 보내주세요. 66666인 척 하는 B에게~

글 마지막에 예시를 살펴보겠습니다

<!DOCTYPE HTML>
<html ng-app>
<head>
</head>
<script src="http://code.angularjs.org/1.2.3/angular.min.js"></script>
</body>
<script>
   
 var self = {name:'boyi'};
 
 //示例1--带参数
 var f = angular.bind(self, //绑定对象,作为函数的上下文
  //被绑定的函数
  function(age){ 
   alert(this.name + ' is ' + age + ' !');
  },
  //绑定的参数,可省略
  '15'
 );
 f();//调用绑定之后的function
  
 //示例2--不带参数
 var m = angular.bind(self, //绑定对象,作为函数的上下文
  //被绑定的函数
  function(age){ 
   alert(this.name + ' is ' + age + ' !');
  }
  //省略参数
 );
  
 m(3);//调用传参的函数		
 
</script>

</body>	
</html>

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.