
1、组合模式将对象组合成树形结构,以表示部分-整体的层次结构。
2、除了用来表示树形结构外,组合模式的另一个优点是通过对象的多态性表达,用户可以一致地使用单个对象和组合对象。
使用组合模式后,很容易扫描整个文件夹,我们只需要操作树的顶部对象。
实例
varFolder=function(name){
this.name=name;
this.files=[];
};
Folder.prototype.add=function(file){
this.files.push(file);
};
Folder.prototype.scan=function(){
console.log('开始扫描文件夹:'+this.name);
for(vari=0,file,files=this.files;file=files[i++];){
file.scan();
}
};
varFile=function(name){
this.name=name;
};
File.prototype.add=function(){
thrownewError('文件下面不能再添加文件');
};
File.prototype.scan=function(){
console.log('开始扫描文件:'+this.name);
};
接下来创建一些文件夹和文件对象,并且让它们组合成一棵树。
varfolder=newFolder('学习资料');
varfolder1=newFolder('JavaScript');
varfolder2=newFolder('jQuery');
varfile1=newFile('JavaScript设计模式与开发实践');
varfile2=newFile('精通jQuery');
varfile3=newFile('重构与模式')
folder1.add(file1);
folder2.add(file2);
folder.add(folder1);
folder.add(folder2);
folder.add(file3);
以上就是JavaScript组合模式的介绍,希望对大家有所帮助。更多Javascript学习指路:Javascript
原文来自:https://www.py.cn
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END


















































暂无评论内容