| 원문 존 데이비드 달튼씨는 자바스크립트를 샌드박스할수 있는 라이브러리, Fushbox를 릴리즈했습니다. 자바스크립트를 확장하는것은 당신이 필요한만큼 언어를 커스터마이징 하는것에 당신에게 힘을준다. 당신은 편리한 메서드, "hello world".capitalize() 나 펑셔널리티하게 구현된 [1,2,3].indexOf(2) 와 같은, 를 추가할수 있다. 이문제는 프레임워크, 라이브러리, 써드파티 스크립트 에서 네이티브 메서드나 서로의 커스텀 메서드들이 예측할수없게 덮어씌워지게 되는 결과가 나온다. Fushbox, 제한된 버전은 FushJS안에서 샌드박싱 컴포넌트를 찾을수 있다. 샌드박스된 자바스크립트를 만듦으로써 이 이슈들을 피할수 있고 자바스크립트에 영향을 주지않고 확장할수 있다. 예를 들어,
var fb = Fusebox();
fb.Array.prototype.hai = function() {
return "Oh hai, we have " + this.length + " items.";
};
fb.Array(1,2,3).hai(); // "Oh hai, we have 3 items."
typeof window.Array.prototype.hai; // undefined
존은 기존 자바스크립트를 샌드박싱하는 문제에 대해 스크린샷으로 소개하고있는 시리즈가 있다. 이것들을 어떻게 사용하는지, 그리고 이 기술이 모든일이 어떻게 사용되어지는지 :
Great to learn from. It is a shame that you have to remember to use a very different way to access the types of course and that you have to do all of this magic.... but with JavaScript, it is what it is! |
Posted on 2010/01/25 14:39
Filed Under Development/Ajaxian