>  기사  >  웹 프론트엔드  >  JS 디자인 패턴 중 명령어 패턴에 대한 자세한 설명

JS 디자인 패턴 중 명령어 패턴에 대한 자세한 설명

php中世界最好的语言
php中世界最好的语言원래의
2018-03-14 14:22:032421검색

이번에는 JSDesign PatternCommand Mode에 대한 자세한 설명을 들고 왔고, JS Command Pattern을 사용할 때 자세히 설명하는 Notes에는 어떤 것들이 있는지 살펴보겠습니다. .

개념
명령 모드는 요청을 객체로 캡슐화하여 클라이언트가 다른 매개변수로 매개변수화될 수 있도록 하는 데 사용됩니다. 이 모드는 함수 호출 요청과 작업을 단일 객체로 캡슐화한 다음 이에 대한 단일 작업을 수행합니다. 개체 처리는 간단히 세 가지 개체로 나뉩니다.
1. 개시자: 호출 명령을 실행하는 방법과 실행하는 사람이 명확하지 않습니다.
2. 수신기: 다양한 명령을 처리하는 해당 인터페이스가 있습니다. 명령이 무엇인지, 누가 명령했는지는 중요하지 않습니다.
3. 명령 개체: 위에서 말했듯이 개시자와 수신자를 분리했으며 이를 연결하려면 이 브리지가 필요합니다. 이것은 명령 개체가 보낸 사람의 호출을 수락한 다음 해당 항목을 호출합니다. 수신기의 인터페이스.

기능 및 주의사항
기능:
1. 캡슐화, 요청, 호출을 하나로 결합합니다.
2. 프로그램 모듈화의 유연성을 향상시킵니다.
참고:
일관적인 변명은 필요하지 않습니다. 낭비를 피하기 위해 함수를 직접 호출하면 됩니다.

Instance

   // 发送者 
            var setCommond = function(button, fn) { 
                button.onClick = function() { 
                    fn() 
                } 
            }; 
            // 执行命令者 
            var menu = { 
                reFresh: function() { 
                    console.log("刷新"); 
                }, 
                add: function() { 
                    console.log("增加"); 
                }, 
                delete: function() { 
                    console.log("删除"); 
                } 
            }; 
            // 命令对象 
            var commondObj = function(reciver) {
                return function() { 
                    reciver.reFresh(); 
                } 
            }; 
            var commondObj1 = commondObj(menu); 
            setCommond(btn1, commondObj1);

Sender(setCommond): 매개변수를 통해 전달되는 한 어떤 버튼에 지정되거나 어떤 이벤트에 바인딩되는지는 중요하지 않습니다.
Command Object(commondObj): 수신자의 매개변수만 수신하면 되며, 송신자가 명령을 실행하면 실행됩니다.
수신기(메뉴): 어디서, 누구에 의해 호출되는지 신경쓰지 않고 필요에 따라 실행하면 됩니다.

이 기사의 사례를 읽은 후 방법을 마스터했다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!

추천 도서:

JS 디자인 패턴 중 빌더 패턴에 대한 자세한 설명

JS 디자인 패턴 중 생성자 패턴에 대한 자세한 설명

js 디자인 패턴 - 싱글턴 패턴의 사용

위 내용은 JS 디자인 패턴 중 명령어 패턴에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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