在javascript中,添加到一个数组会导致添加到另一个数组,反之亦然
在这段代码中,我使用不同的函数构造函数创建了一组数组:在javascript中,添加到一个数组会导致添加到另一个数组,反之亦然,javascript,html,set,Javascript,Html,Set,在这段代码中,我使用不同的函数构造函数创建了一组数组: //集合的一般用途是确保其元素是唯一的 函数SetJs(){ 集合=[]; this.has=(值)=>{ 返回集合。indexOf(值)!=-1; } this.add=(值)=>{ 如果(!this.has(value)){ 收集、推送(值); 返回`${value}添加到集合`; }否则{ 返回`${value}已经是集合`的一部分; } } this.delete=(值)=>{ 如果(这个有(值)){ collection.spl
//集合的一般用途是确保其元素是唯一的
函数SetJs(){
集合=[];
this.has=(值)=>{
返回集合。indexOf(值)!=-1;
}
this.add=(值)=>{
如果(!this.has(value)){
收集、推送(值);
返回`${value}添加到集合`;
}否则{
返回`${value}已经是集合`的一部分;
}
}
this.delete=(值)=>{
如果(这个有(值)){
collection.splice(collection.indexOf(value),1)
返回从集合“”中删除的“${value}”;
}否则{
返回`${value}在集合`中找不到;
}
}
this.set=()=>{
回收;
}
this.length=()=>{
返回集合长度;
}
}
var set1=new SetJs();
var set2=new SetJs();
让结果;
const getSetByNumber=(setNumber)=>{
如果(setNumber==1){
返回集合1;
}否则{
返回集合2;
}
}
常量addToSet=(setNumber)=>{
设set=getSetByNumber(setNumber);
结果=set.add(document.getElementById('input').value);
printSet();
}
常量deleteFromSet=(setNumber)=>{
设set=getSetByNumber(setNumber);
结果=set.delete(document.getElementById('input').value);
printSet();
}
常量打印集=()=>{
document.getElementById('result')。innerHTML=result;
document.getElementById('set1').innerHTML=JSON.stringify(set1.set());
document.getElementById('set2').innerHTML=JSON.stringify(set2.set());
}
Set在javascript中的实现
添加到集合1
从集合1中删除
添加到集合2中
从集合2中删除
第1组:
第2组:
如果不定义作用域,则将其视为全局作用域变量。您需要将集合
定义为该函数中的作用域
//集合的一般用途是确保其元素是唯一的
函数SetJs(){
让集合=[];
this.has=(值)=>{
返回集合。indexOf(值)!=-1;
}
this.add=(值)=>{
如果(!this.has(value)){
收集、推送(值);
返回`${value}添加到集合`;
}否则{
返回`${value}已经是集合`的一部分;
}
}
this.delete=(值)=>
collection=collection.filter(item=>item!==value);
this.set=()=>集合;
this.length=()=>collection.length;
}
var set1=new SetJs();
var set2=new SetJs();
让结果;
const getSetByNumber=(setNumber)=>{
如果(setNumber==1){
返回集合1;
}否则{
返回集合2;
}
}
常量addToSet=(setNumber)=>{
设set=getSetByNumber(setNumber);
结果=set.add(document.getElementById('input').value);
printSet();
}
常量deleteFromSet=(setNumber)=>{
设set=getSetByNumber(setNumber);
结果=set.delete(document.getElementById('input').value);
printSet();
}
常量打印集=()=>{
document.getElementById('result')。innerHTML=result;
document.getElementById('set1').innerHTML=JSON.stringify(set1.set());
document.getElementById('set2').innerHTML=JSON.stringify(set2.set());
}
Set在javascript中的实现
添加到集合1
从集合1中删除
添加到集合2中
从集合2中删除
第1组:
第2组:
如果不定义作用域,则将其视为全局作用域变量。您需要将集合
定义为该函数中的作用域
//集合的一般用途是确保其元素是唯一的
函数SetJs(){
让集合=[];
this.has=(值)=>{
返回集合。indexOf(值)!=-1;
}
this.add=(值)=>{
如果(!this.has(value)){
收集、推送(值);
返回`${value}添加到集合`;
}否则{
返回`${value}已经是集合`的一部分;
}
}
this.delete=(值)=>
collection=collection.filter(item=>item!==value);
this.set=()=>集合;
this.length=()=>collection.length;
}
var set1=new SetJs();
var set2=new SetJs();
让结果;
const getSetByNumber=(setNumber)=>{
如果(setNumber==1){
返回集合1;
}否则{
返回集合2;
}
}
常量addToSet=(setNumber)=>{
设set=getSetByNumber(setNumber);
结果=set.add(document.getElementById('input').value);
printSet();
}
常量deleteFromSet=(setNumber)=>{
设set=getSetByNumber(setNumber);
结果=set.delete(document.getElementById('input').value);
printSet();
}
常量打印集=()=>{
document.getElementById('result')。innerHTML=result;
document.getElementById('set1').innerHTML=JSON.stringify(set1.set());
document.getElementById('set2').innerHTML=JSON.stringify(set2.set());
}
Set在javascript中的实现
添加到集合1
从集合1中删除
添加到集合2中
从集合2中删除
第1组:
第2组:
您的删除功能也不正确,我在编辑中修复了它。您的删除功能也不正确,我在编辑中修复了它。