Heim  >  Fragen und Antworten  >  Hauptteil

javascript - Die wiederholten Teile dieser beiden Funktionen in einer Funktion kapseln?

//给数组中的每一项增加3

function addThreeForEachItem(array){

      for(var i = 0; i < array.length; i++){

        array[i] = array[i] + 3;

    }

    return array;

}

//将数组中的每一项编码

function encodeEachItem(array){

    for(var i = 0; i < array.length; i++){

        array[i] = encodeURIComponent(array[i]);

    }

    return array;

}

Die beiden Funktionen sind sehr ähnlich (Duplikat). Wie kann man die wiederholten Teile dieser beiden Funktionen in einer Funktion zusammenfassen?

大家讲道理大家讲道理2727 Tage vor588

Antworte allen(3)Ich werde antworten

  • 某草草

    某草草2017-05-19 10:11:46

    原生的方法就有 不用封装

    array.map(item=>item+3)
    array.map(item=>encodeURIComponent(item))

    Antwort
    0
  • ringa_lee

    ringa_lee2017-05-19 10:11:46

    JS自带的map方法已经封装了你的需求

    Antwort
    0
  • 巴扎黑

    巴扎黑2017-05-19 10:11:46

    可以考虑给第二个参数来区分
    function repeatControl(array,param){
     for(var i = 0; i < array.length; i++){
        if(param=='addThree'){
           array[i] + = 3;
        }else{
           array[i] = encodeURIComponent(array[i]);
        }
     }
      return array;
    }

    Antwort
    0
  • StornierenAntwort