如何在javascript中将一个数组的内容替换为另一个数组的内容

时间:2019-03-07 14:54:08

标签: javascript

我有一个json格式的内容。我的愿望是将json内容放入一个javascript变量中,然后将该变量加载到getContact()函数中以供以后使用。 我尝试了很多选择,例如fetch()async/await,但似乎都没有用。
除了微小的差异外,我有一个几乎可行的选择。

var theContacts=[] ; //<<<< empty array here
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
 if (this.readyState == 4 && this.status == 200) 
 {
    var contact =JSON.parse(xhttp.response);
    theContacts.push(...contact); //<<<< Push here
    console.log(contact);//<<<< first output to console
}
};
xhttp.open("GET", "js/contalist.php", true);
xhttp.send();

myApp.factory('ContactService', [function() 
{
   var factory = {};

   factory.getContacts = function(response) 
   {

       var contactsList=theContacts;
       return contactsList; 
   };

return factory;
}]);


console.log(theContacts);//<<< second output to console

这是我的第一个控制台输出

`console.log(contact);`
(2) [{…}, {…}]
0: {name: "ADMINISTRATOR", email: "", first_name: "", last_name: ""}
1: {name: "GUEST", email: "", first_name: "", last_name: ""}

length: 2
__proto__: Array(0)

这是我的第二个控制台输出

`console.log(theContacts)`
[]
0: {name: "ADMINISTRATOR", email: "", first_name: "", last_name: ""}
1: {name: "GUEST", email: "", first_name: "", last_name: ""}

length: 2
__proto__: Array(0) 

我需要获得第一和第二输出的完全匹配。

两者都以(2)[{...}, {...}]开始,谁对实现此目标有任何想法?请帮助我!

0 个答案:

没有答案