📄 set.js
字号:
/* Copyright (c) 2004-2006, The Dojo Foundation All Rights Reserved. Licensed under the Academic Free License version 2.1 or above OR the modified BSD license. For more information on Dojo licensing, see: http://dojotoolkit.org/community/licensing.shtml*/dojo.provide("dojo.collections.Set");dojo.require("dojo.collections.Collections");dojo.require("dojo.collections.ArrayList");dojo.collections.Set = new function () { this.union = function (setA, setB) { if (setA.constructor == Array) { var setA = new dojo.collections.ArrayList(setA); } if (setB.constructor == Array) { var setB = new dojo.collections.ArrayList(setB); } if (!setA.toArray || !setB.toArray) { dojo.raise("Set operations can only be performed on array-based collections."); } var result = new dojo.collections.ArrayList(setA.toArray()); var e = setB.getIterator(); while (!e.atEnd()) { var item = e.get(); if (!result.contains(item)) { result.add(item); } } return result; }; this.intersection = function (setA, setB) { if (setA.constructor == Array) { var setA = new dojo.collections.ArrayList(setA); } if (setB.constructor == Array) { var setB = new dojo.collections.ArrayList(setB); } if (!setA.toArray || !setB.toArray) { dojo.raise("Set operations can only be performed on array-based collections."); } var result = new dojo.collections.ArrayList(); var e = setB.getIterator(); while (!e.atEnd()) { var item = e.get(); if (setA.contains(item)) { result.add(item); } } return result; }; this.difference = function (setA, setB) { if (setA.constructor == Array) { var setA = new dojo.collections.ArrayList(setA); } if (setB.constructor == Array) { var setB = new dojo.collections.ArrayList(setB); } if (!setA.toArray || !setB.toArray) { dojo.raise("Set operations can only be performed on array-based collections."); } var result = new dojo.collections.ArrayList(); var e = setA.getIterator(); while (!e.atEnd()) { var item = e.get(); if (!setB.contains(item)) { result.add(item); } } return result; }; this.isSubSet = function (setA, setB) { if (setA.constructor == Array) { var setA = new dojo.collections.ArrayList(setA); } if (setB.constructor == Array) { var setB = new dojo.collections.ArrayList(setB); } if (!setA.toArray || !setB.toArray) { dojo.raise("Set operations can only be performed on array-based collections."); } var e = setA.getIterator(); while (!e.atEnd()) { if (!setB.contains(e.get())) { return false; } } return true; }; this.isSuperSet = function (setA, setB) { if (setA.constructor == Array) { var setA = new dojo.collections.ArrayList(setA); } if (setB.constructor == Array) { var setB = new dojo.collections.ArrayList(setB); } if (!setA.toArray || !setB.toArray) { dojo.raise("Set operations can only be performed on array-based collections."); } var e = setB.getIterator(); while (!e.atEnd()) { if (!setA.contains(e.get())) { return false; } } return true; };}();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -