0
JavaScriptの初心者プログラミングで、配列に関するいくつかの問題があります: 配列とループ内の別の位置との間でデータ交換を行うと、すべて配列の位置は同じ値に変換されます。つまり、配列の位置は最後に追加されたオブジェクトと同じです。 私は何が起こっているかを知るために私を助けるために、コードを残して:配列のすべての位置が同じ値に変更されました
.controller("UserAndEditLanguagePanel", function (usersFactory, userLanguagesFactory, LanguageFactory) {
var vm = this;
vm.userSesion = {};
var objAux = {};
objAux.langname = "";
objAux.level = "";
vm.lenguajesUsuario = new Array();
vm.funciones = {
cargarPerfil: function() {
usersFactory.obtenerUsuarioSesion().then(function (respuesta) {
vm.userSesion.idu = respuesta.idu;
vm.userSesion.username = respuesta.username;
vm.userSesion.email = respuesta.email;
console.log("Se han obtenido los datos de usuario de la sesión correctamente. Respuesta: ", respuesta);
userLanguagesFactory.obtenerLenguagesUsuarios().then(function (lenguajesUsuarios) {
console.log("Se han obtenidos los datos de los lenguajes de los usuarios. Respuesta: ", lenguajesUsuarios);
LanguageFactory.obtenerLenguajes().then(function (listaLenguajes) {
console.log("Se han traido los datos de los lenguajes. Respuesta: ", listaLenguajes);
console.log(lenguajesUsuarios);
for (var i = 0; i < lenguajesUsuarios.length; i++) {
if (lenguajesUsuarios[i].idu == vm.userSesion.idu) {
objAux.langname = listaLenguajes[lenguajesUsuarios[i].idl].langname;
objAux.level = lenguajesUsuarios[i].level;
vm.lenguajesUsuario.push(objAux);
}
}
は事前にありがとうございました!
申し訳ありません、申し訳ありません、問題は、配列 "lenguajesUsuarios"とオブジェクト "objAux"に関連してループ内にあります。 –
誰かの助けなしに追加して2分以内に解決策が見つかった場合は、この質問を削除できます –