JS集合设置类的实现与使用方法示例
本文实例讲述了射流研究…集合设置类的实现与使用方法。分享给大家供大家参考,具体如下:
射流研究…集合设置类的实现
/*js集合设置类的实现*/function Set(){ this。datastore=[];this.add=add/新增元素this.remove=移除;//删除元素this.size=size//集合的元素个数this.union=union//求并集this.contains=contains//判断一个集合中是否包含某个元素this.intersect=intersect//交集this.subset=subset//判断一个集合是否是另一个的子集this.difference=difference//求补集this.show=show//将集合元素显示出来}函数添加(数据){ if(this。数据存储。indexof(data)0){ this。数据存储。推送(数据);返回真;} else {返回false} }函数移除(数据){ var pos=this。数据存储。indexof(数据);如果(位置-1) { this.dataStore.splice(位置,1);返回真;} else {返回false} }函数size(){返回这个。数据存储。长度;}函数show(){ return '[' this。数据存储']';}函数包含(数据){如果(这个。数据存储。indexof(data)-1){返回true} else {返回false} }函数union(Set){ var tempSet=new Set();for(var I=0;我喜欢这个。数据存储。长度;I){ TempSet。加上(这个。数据存储[I]);} for(var I=0;我准备好了。数据存储。长度;i) { if(!tempset。包含(设置。数据存储[I]){ tempset。数据存储。推动(设置。数据存储[I]);} }返回tempSet}函数相交(集合){ var tempSet=new Set();for(var I=0;我喜欢这个。数据存储。长度;I){ if(set。包含(此。数据存储[I]){ tempset。加上(这个。数据存储[I]);} }返回tempSet}函数子集(设置){ if(this。大小()。准备好。size()){ return false;} else { for(this。数据存储中的定义变量成员){ if(!准备好。包含(成员)){返回false} } }返回真}函数差(集){ var tempSet=new Set();for(var I=0;我喜欢这个。数据存储。长度;i) { if(!准备好。包含(此。数据存储[I]){ TempSet。加上(这个。数据存储[I]);} }返回tempSet}/*测试例子:求补集。属于集合cis,不属于集合it */var cis=new Set();var it=new Set();cis。添加(' Clayton ');cis。添加(' Jennifer ');cis。添加(' Danny ');it.add('布莱恩');它。添加(' Clayton ');它。添加(' Jennifer ');var diff=new Set();diff=cis。差异(it);控制台。日志(cis。show()“区别”一下吧。show()"-"diff。show());这里使用在线HTML/CSS/JavaScript代码运行工具:http://工具。JB 51。net/code/HTMljsrun测试上述代码,可得如下运行结果:
更多关于Java脚本语言相关内容感兴趣的读者可查看本站专题: 《JavaScript数据结构与算法技巧总结》 、 《JavaScript数学运算用法总结》 、 《JavaScript排序算法总结》 、 《JavaScript遍历算法与技巧总结》 、 《JavaScript查找算法技巧总结》 及《JavaScript错误与调试技巧总结》
希望本文所述对大家Java脚本语言程序设计有所帮助。
版权声明:JS集合设置类的实现与使用方法示例是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。