Mitchell Amihod씨가 YUI에서 조금 언급된 부분인 YAHOO.lang의 기능에 대한 글을 썼습니다.

그는 isNull(), isUndefined(), isValue() 등의 타입 체크 함수에 대한 이야기로 시작했고, 그 다음에 trim() 함수에 대해 말했습니다.

YUI에 치환 형식의 작은 템플릿 언어가 있다는 사실을 알고 계셨나요?

[code:JScript]
// simple

YAHOO.lang.substitute('Hello {world}', {'world':'earth'});

// process
var processText = function(key, value, extraInfo) {
  if(!YAHOO.lang.isNull(extraInfo)) {
    return extraInfo;
  }
  return value.toUpperCase();
};
YAHOO.lang.substitute('Hello {world Venus, Jupiter}', {'world':'earth'}, processText);

setInterval/setTimeout 호출을 래핑하지 않은 DHTML 라이브러리는 없겠죠:

[code:JScript]
var foo = {
  count :0,
  'method' : function(data) {
    this.count++;
    if(this.count == 10) {
      timer.cancel();
    }
    console.log(this.count);
  }

var timer = YAHOO.lang.later(1000, foo, 'method', [{data:'bar', data2:'zeta'}], true);

이후에는 머지할 필요가 있습니다. 만약 Rails 개발에 익숙하시다면, 해시를 대응시켜 머지 스타일의 연산을 해서 원하는 결과를 얻는 것에 중독되고 말 것입니다.

[code:JScript]
var myAwesomelWidget = function(oConfigs) {
  oConfigs = oConfigs || {};
  var defaults = {
    'awesomeness' : '11',
    'shiny'       : 'high',
    'sparkle'     : 'high'
  }
 
  var combinedConfigs = YAHOO.lang.merge(defaults, oConfigs);
  //Shiny is now set to low, everything else in combinedConfigs is set to the defaults
};
myAwesomelWidget({'shiny': 'low'});

from Reminded of speaking your YAHOO.lang on Ajaxian
Posted by 행복한고니 트랙백 0 : 댓글 0