如何将多个函数组合为一个函数

How to combine many functions into a single function?

本文关键字:函数 一个 组合      更新时间:2023-09-26

我有一个带循环的动态按钮,我有onclick属性函数,如下所示:

for (var j=0; j<= 1; j++){ 
  btndisplay= document.createElement("input");
  btndisplay.setAttribute("type", "button");
  btndisplay.setAttribute("style","height:80px;width:60px");
  btndisplay.setAttribute("onclick", "myFunction"+ (j+1) +"(this.name)"); 
  document.getElementById('divButtons'+(j+1)).appendChild(btndisplay);   
}

如何将下面的许多函数简化为一个函数?

  function myFunction1(name) 
  { 
    if (document.getElementById('value1').innerHTML==""){
     document.getElementById('value1').innerHTML = name; 
    }
  }
  function myFunction2(name) 
  { 
    if (document.getElementById('value2').innerHTML==""){
      document.getElementById('value2').innerHTML = name; 
  } 

使用另一个参数,一个用于name,另一个用于id:

function myFunction(id, name) 
{
    if ( document.getElementById(id).innerHTML=="" )
        document.getElementById(id).innerHTML = name; 
}

您已创建:

<input type="button" onclick="myFunction(this)">
<input...
...

功能是:

function myFunction (that) {
  if(that.innerHTML === "") {
    that.innerHTML = that.name;
  }
}