繁体   English   中英

如何使用不同的变量在 javascript 中重用 function

[英]How to reuse a function in javascript with different variables

我有一组按钮,单击它们会触发 function 将它们的 ID 切换到一个名为MyArray的数组

function AddToArray(a, v) {
 
 var v = this.id
 var a = myArray
  
    var i = a.indexOf(v);
    if (i === -1)
        a.push(v);
    else
        a.splice(i,1);
}

我想将相同的 function 用于一组不同的按钮。 我不想将他们的 ID 切换到MyArray ,而是希望将它们切换到MySecondArray

目前,我简单有两个独立的功能,但重复代码似乎是错误的。

我考虑将数据属性添加到值为MyArrayMySecondArray的按钮,然后将此字符串转换为变量以推送到相关数组。 我明白虽然使用诸如eval()之类的函数可能是不安全的。

因此,我想知道在一般重用功能方面,最好的方法是什么?


function toggleToArray(arr, id) {
    const i = arr.indexOf(id);
    return i === -1 ? [...arr, id] : arr.filter(val => val !== id);
}

// add if id does not exist
const myArr = toggleToArray(['a', 'b', 'c'], 'd');
console.log('toggltoarray.js: 8  myArr ', myArr);

// remove if exists
const myArr1 = toggleToArray(myArr, 'd');
console.log('toggltoarray.js: 12  myArr1 ', myArr1);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM