簡體   English   中英

在javascript中使用完每個結果后,如何將結果放入數組中?

[英]How can I put the results in an array after use each in javascript?

嗨,我有這個功能:

changeTarea: function() {

    var self = this;
    $("#select_tarea_id").change(function() {
        var id_tarea = $("#select_tarea_id").val();

        $.each(self.objTareasFlot, function(index,value) {

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

                if(value[i].Id == id_tarea) {

                    self.objTareasFlotFinal['id']=value[i].Id;
                    self.objTareasFlotFinal['id_pro']=value[i].Id_proyecto;
                    self.objTareasFlotFinal['tarea']=value[i].nombre_tarea;
                    self.objTareasFlotFinal['porcentaje']=value[i].porcentaje;

                    console.info(self.objTareasFlotFinal);
                }
            }
       });

    });
}

和功能打印:

在此處輸入圖片說明

但我需要在一個數組中的3個結果

例如 :

在此處輸入圖片說明

我該如何使用該功能? 對不起,我的英文我曾嘗試解釋更好的方法

您可以聲明一個數組並將填充的對象推入其中。 像這樣:

changeTarea: function(){

var self = this;
var container[];

$("#select_tarea_id").change(function() {
    var id_tarea = $("#select_tarea_id").val();

$.each(self.objTareasFlot, function(index,value) {

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

        if(value[i].Id == id_tarea){

        self.objTareasFlotFinal['id']=value[i].Id;
        self.objTareasFlotFinal['id_pro']=value[i].Id_proyecto;
        self.objTareasFlotFinal['tarea']=value[i].nombre_tarea;
        self.objTareasFlotFinal['porcentaje']=value[i].porcentaje;

        console.info(self.objTareasFlotFinal);
        container.push(self.objTareasFlotFinal);
        }

    }


 });

});},

創建一個數組變量var result = []; 內部功能。

在循環中將對象push()放入其中;

results.push(self.objTareasFlotFinal);
    var newArray = [];

    self.objTareasFlotFinal['id']=value[i].Id;
                        self.objTareasFlotFinal['id_pro']=value[i].Id_proyecto;
                        self.objTareasFlotFinal['tarea']=value[i].nombre_tarea;
                        self.objTareasFlotFinal['porcentaje']=value[i].porcentaje;

    newArray.push(self.objTareasFlotFinal);

// console.log should show the results
console.log(newArray);

如果此數組是全局的,並且可以在函數外部訪問,則可能需要先在函數外部定義newArray,然后從函數中刪除var。

然后,每次有人運行該函數時,都會向該數組添加一個新對象。

或者,您可以只將數組作為最終值返回:

     var newArray = [];

        self.objTareasFlotFinal['id']=value[i].Id;
                            self.objTareasFlotFinal['id_pro']=value[i].Id_proyecto;
                            self.objTareasFlotFinal['tarea']=value[i].nombre_tarea;
                            self.objTareasFlotFinal['porcentaje']=value[i].porcentaje;

        newArray.push(self.objTareasFlotFinal);

return newArray;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM