prototype.js에 새롭게 정의된 객체와 클래스

* PeriodicalExecuter 객체

이 객체는 주어진 함수를 주어진 시간간격으로 반복적으로 호출하기 위한 로직을 제공한다.

- [ctor](callback, interval)
  callback : 파라미터 성격이 아닌 함수
  interval: 호출할 초단위 시간간격 
  함수를 반복적으로 이 객체의 하나의 인스턴스를 생성

  var tm = new PeriodicalExecuter(function(){alert("열려라 참깨~~!");},2);

  위 tm 객체는 2 초에 한번식 "열려라 참깨~~!" 라는 alert 창을 띄웁니다.
  함수는 외부에 정의가 되도 당연히 되겠죠.
  alert 창을 닫은후 2초 후에 다시 띄웁니다.
  중복 수행되지 않는 다는말이죠.

- currentlyExecuting
  이 프로퍼티는 객체에서 호출된 함수가 진행중인가에 대한 Boolean 값입니다.


* Prototype 객체


이 객체는 라이브러리의 버전을 가지고 있고 특별한 기능은 없다.

- Version
  Prototype 의 버전을 String 로 가지고있다.

- emptyFunction
  비어있는(empty) 함수 객체

- K

  주어진 파라미터를 되돌리는 함수 객체

- ScriptFragment
  스크립트를 확인하는 정규식 표현

이 객체는 그냥 넘어가겠다. 별로 중요하지 않다고 하니..


* Enumerable 객체

이 객체는 LIST 유형의 객체이고 반복구조에 적함하도록 되어고 유용한 속성을 많이 가지고있어서 만은객체들이 이를 계승받아서 작성된다.

+  프로퍼티

- Version
  라이브러리의 버전

+ 메소드

- each(iterator)
  iterator: Function(value, index)를 충족하는 함수 객체
  주어진 iterator함수를 호출하고 그것은  첫번째 인자로 목록의 각각의 요소와
  두번째 인자로 요소의 인덱스 전달한다.

- all([iterator])
  iterator: Function(value, index)를 충족하는 함수 객체
   주어진 함수를 사용하여 전체 값을  테스트한다.
   전체의값중 하나라도 null 이나 false 를 리턴하면 이 함수는 false 를리턴 하고 전체가
  true 인 경우 true 를 리턴한다.
   iterator가 주어지지 않는다면, 요소 자체가 false 나 null이 아닌지 체크 할 것이다.

- any(iterator)
   iterator: Function(value, index)를 충족하는 함수 객체(선택사항)
  이 함수는 all 과 비슷하나 전체값 중 어느 하나만 true 인 경우 true 를 반환한다.
   all 함수가 전체 요소에 대해서 and 관계연산을 한다고 하면 any 함수는 전체 요소에 대해
  OR 관계연산을 한다고 볼 수 있다.

- collect(iterator)
  iterator: Function(value, index)를 충족하는 함수 객체
  집합내 각각의 요소를 위한 iterator함수를 호출하고 Array로 각각의 결과를 반환한다.
  집합내 각각의 요소를 위한 하나의 결과 요소는 같은 순서이다. 

- detect(iterator)
  iterator: Function(value, index)를 충족하는 함수 객체
  집합내 요소중 최초로 true 결과를 주는 첫 요소를 리턴한다.
   true를 반환하는 요소가 없다면, detect는 null을 반환한다. 

- entries()
   array 로 값들을 추출해낸다. 

- find(iterator)
  iterator: Function(value, index)를 충족하는 함수 객체
  detect()와 같다. 

- findAll(iterator)
  iterator: Function(value, index)를 충족하는 함수 객체
  집합내 요소중 최초로 true 결과를 주는 모든  값을 Array을 반환한다.
  이 함수는 reject()와는 반대의 함수이다. 

- grep(pattern [, iterator])
   pattern: 요소를 일치시키기 위해 사용되는 정규식 표현(RegExp객체 - 정규식은 어렵다 )
  iterator: Function(value, index)를 충족하는 함수 객체
  유닉스의 grep 명령어 와 비슷하다.
  집합내 각각의 요소의 문자열 값을 pattern 정규표현식에 대해 체크하고 정규표현식에
  대응되는 모든 요소를 포함하는 Array 를 반환한다.
   iterator함수를 사용하면 정규식에 대응되는 값들을 찾아서 iterator 함수에 넣고
   그 결과값을 Array 에 저장한다.

- include(obj)
  obj: 집합내 주어진 객체를 찾도록 시도한다.
  객체가 찾아진다면, true를 반환하고 찾지 못한다면 false를 반환한다. 

- inject(initialValue, iterator)
   initialValue: 초기화 값처럼 사용되는 객체
  iterator: Function(accumulator, value, index)를 충족하는 함수 객체
   잡합의 모든 요소를 accumulator 아규먼트에 initialValue 를 초기값으로 누적한다. 

- invoke(methodName [, arg1 [, arg2 [...]]])
  methodName: 각각의 요소내에서 호출될 메소드의 이름
  arg1..argN: 메소드 호출로 전달될 인자.
  집합의 각각의 요소내의 값을 methodName함수를 (arg1에서 argN)인자로 호출하고
   그 결과를 Array객체에 담아 반환한다. 

- map(iterator)
  iterator: Function(value, index)를 충족하는 함수 객체 collect()과 같다. 

- max([iterator])
  iterator: Function(value, index)를 충족하는 함수 객체
  집합내 가장 큰 값이나 iterator가 있으면 iterator호출 결과중 가장 큰 값을 반환한다.  

- member(obj)
   obj: 객체 include()과 같다. 

- min([iterator])
  iterator: Function(value, index)를 충족하는 함수 객체
   max 와 반대로 가장 작은값이나 가장 작은 iterator 결과를 반환한다.

- partition([iterator])
   iterator: Function(value, index)를 충족하는 함수 객체
   true 를 반환하거나 iterator결과가 true 인 모든 요소 배열과,  나머지 모든 요소들의  배열
  2 개의 배열을 반환한다.

- pluck(propertyName)
   propertyName : 각각의 요소로부터 읽어들이는 프라퍼티의 이름.
                        이것은 요소의 인덱스를 포함할수 있다.
  집합에서 propertyName과 같은 프라퍼티의 값을 Array객체로 반환한다. 

- reject(iterator)
   iterator: Function(value, index)를 충족하는 함수 객체
  집합에서 iterator함수의 결과가  false인 모든 요소를 Array로 반환한다.
  이 함수는 findAll()과는 반대되는 함수이다.

- select(iterator)
  iterator: Function(value, index)를 충족하는 함수 객체
  findAll()과 같다.  ( reject 와반대이다. ㅎㅎㅎ)

- sortBy(iterator)
  iterator: Function(value, index)를 충족하는 함수 객체
  iterator함수호출결과를 정렬하여 Array로 반환. 

- toArray()
   집합의 모든 요소를 Array로 반환.  

- zip(collection1[, collection2 [, ... collectionN [,transform]]])
   collection1 .. collectionN: 병합될 목록
  transform: Function(value, index)를 충족하는 함수 객체
  여러개의 집합을 인수로 받아서 인댁스가 동일한 값끼리 배열로 만들고
  그 배열들을 모아서 2 차원 배열로 반환한다.
  transform함수가 있으면 각각의 내부 배열은 transform함수에 의해서 변형된다.
   예제 : [1,2,3].zip([4,5,6], [7,8,9]).inspect() 는 "[[1,4,7],[2,5,8],[3,6,9] ]" 를 반환한다.


* Hash 객체


해시구조를 구현한다.
해시는 자료구조중 키로 주소를 연산해내는 방법으로 부고 키와 키값 쌍으로 파라메타를 넘기는따위에 많이 사용된다.

Hash객체내 각각의 항목은 두개의 요소(첫번째는 key, 두번째는 value)를 가진 배열이다.

- keys()
   모든 항목의 key를 가진 Array을 반환

- values()
   모든 항목의 value를 가진 Array을 반환 

- merge(otherHash)
  otherHash: Hash 객체
  hash와 전달된 다른 hash를 조합하고 새로운 결과 hash를 반환 

- toQueryString()
   쿼리 문자열처럼 포맷팅된 문자열로 hash의 모든 항목을 반환한다.
   'key1=value1&key2=value2&key3=value3'  이런 형식으로 반환하므로 url 의 파라메타 등으로
  사용하기 적당하다.

- inspect()
   key:value쌍을 가진 hash의 포맷팅된 문자열 표현을 반환하기 위해 변경(오버라이드)


* ObjectRange 클래스

Enumerable으로부터 상속
상위 경계나 하위 경계로 값들의 범위를 표시 한다.
반복을 위해서 사용되어지는것 같다. 범위 내의 값은 기억하고 있지않고 단지 처음과 끝 그리고 처음값과 끝값이 포함되는디( > 인지, >= 인지 )에 대한 정보만을 가지고있다.


+ 프로퍼티

- start (any)
  범위의 시작값

- end (any)
  범위의 마지막값

- exclusive
  instance 경계자체가 범위의 일부인지 판단


+ 메소드

- [ctor](start, end, exclusive)
  start: 시작값
  end: 마지막값
   exclusive: 경계가 범위내 포함되는가 ?
  하나의 range객체를 생성한다.
  start 에서 end로 범위를 지정한다.
  start 와 end가 같은 타입의 객체이고 succ()메소드를 가져야만 한다. 

- include(searchedValue)
  searchedValue: 검색할 값
  주어진 값이 범위내 값인지 체크. true 나 false값을 반환한다. 


* Class 객체


Class 객체는 라이브러리에서 다른 클래스를 선언할때 사용된다.
클래스를 선언할때 이 객체를 사용하는 것은 생성자로 제공되는 initialize()메소드를 지원하기 위한 새로운 클래스를 발생시킨다.  (어렵다..ㅠ.ㅠ)


//class 객체를 사용해서 클레스를 생성한다.
var MySampleClass = Class.create();

//생성한 클레스를 prototype 로 정의한다.
// 아마 자바스크립트는 기존에있는 클레스를 재정의 하기만하고 생성하지는않는가보다.
MySampleClass.prototype = {
  initialize: function(message) {
this.message = message;
  },
showMessage: function(ajaxResponse) {
     alert(this.message);
  }
};

//새로 생선한 클레스를사용하여보자
var myTalker = new MySampleClass('hi there.');
myTalker.showMessage(); //메세지가 alert 창으로 뜰것이다.

- create(*)
   새로운 클래스를 위한 생성자를 정의

트랙백 보낼 주소 :: http://ekxkaks.pe.kr/blog/trackback/31

  1. prototype.js에 새롭게 정의된 객체와 클래스

    2007/07/19 13:28
    삭제
    <STRONG><FONT face="Comic Sans MS" color=#8e8e8e size=5>prototype.js에 새롭게 정의된 객체와 클래스</FONT></STRONG><BR>

댓글을 달아주세요:: 네티켓은 기본, 스팸은 사절

  1. 2007/05/19 13:25
    댓글 주소 수정/삭제 댓글
    관리자만 볼 수 있는 댓글입니다.
  2. 2007/06/06 15:17
    댓글 주소 수정/삭제 댓글
    전혀 불쾌하지 않습니다.
    번역이 허접하여 죄송할 다름입니다.
    아직 절반도 못했는데 도통 시간이 나질 안는군요ㅠ.ㅠ

◀ PREV : [1] : ... [19] : [20] : [21] : [22] : [23] : [24] : [25] : [26] : [27] : ... [50] : NEXT ▶

BLOG main image
다타만이가 운영하는 허접시런 블로그입니다. 뭔가 기대하고 오셨을 수도 있지만 별로 내용은 없습니다. 나름대로 혼자 노는.... by 다타만

공지사항

카테고리

All Content (50)
주저리..주저리.. (16)
산으로.들로.. (3)
지나온 흔적.. (4)
사진들.. (0)
우리집이야기 (1)
삽/질/중/ (17)
컴퓨터쪼가리 (2)
취미.여가 (6)
Total : 15603
Today : 7 Yesterday : 6