JavaScript组合模式是什么

JavaScript组合模式是什么

1、组合模式将对象组合成树形结构,以表示部分-整体的层次结构。

2、除了用来表示树形结构外,组合模式的另一个优点是通过对象的多态性表达,用户可以一致地使用单个对象和组合对象。

使用组合模式后,很容易扫描整个文件夹,我们只需要操作树的顶部对象。

实例

JavaScript

    var Folder = 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 (var i = 0, file, files = this.files; file = files[i++];) {
 
        file.scan();
 
      }
 
    };
 
 
 
    var File = function (name) {
 
      this.name = name;
 
    };
 
    File.prototype.add = function () {
 
      throw new Error('文件下面不能再添加文件');
 
    };
 
    File.prototype.scan = function () {
 
      console.log('开始扫描文件: ' + this.name);
 
    };
 
 
 
接下来创建一些文件夹和文件对象,并且让它们组合成一棵树。
 
  var folder = new Folder('学习资料');
 
  var folder1 = new Folder('JavaScript');
 
  var folder2 = new Folder('jQuery');
 
  var file1 = new File('JavaScript 设计模式与开发实践');
 
  var file2 = new File('精通jQuery');
 
  var file3 = new File('重构与模式')
 
  folder1.add(file1);
 
  folder2.add(file2);
 
  folder.add(folder1);
 
  folder.add(folder2);
 
  folder.add(file3);

以上就是JavaScript组合模式的介绍,希望对大家有所帮助。

 

posted @ 2022-10-25 02:01  很酷的站长  阅读(48)  评论(0编辑  收藏  举报
70博客 AI工具 源码下载