JavaScript中的对象覆盖键值对

JavaScript中的对象覆盖键值对,javascript,arrays,object,maps,Javascript,Arrays,Object,Maps,我试图使用JavaScript中的对象存储一个用户ID(键)和一个GPS坐标数组,但由于某种原因,每次添加一组新的坐标(当它从数据库中提取时),它都会覆盖数组中以前的坐标(值),而不是追加 $(function () { $(document).ready(function(){ setInterval(function(){ $.ajax({

我试图使用JavaScript中的对象存储一个用户ID(键)和一个GPS坐标数组,但由于某种原因,每次添加一组新的坐标(当它从数据库中提取时),它都会覆盖数组中以前的坐标(值),而不是追加

$(function () {
        $(document).ready(function(){
            setInterval(function(){
                $.ajax({                                      
                    url: 'api.php',                  //the script to call to get data          
                    data: "",                        
                    dataType: 'json',                //data format      
                    success: function(data){          //on recieve of reply                          
                        var loc = {};

                        user_id = data[0];
                        lati = data[1];              //get id
                        longi = data[2];           //get name

                        var myLatlngt = 'new google.maps.LatLng(' + lati + ',' + longi + ')';

                        if (typeof loc[user_id] === 'undefined') {
                            loc[user_id] = [];
                            }

                        loc[user_id].push(myLatlngt);
                        console.log('loc :::', loc);
这是日志:

Resource interpreted as Other but transferred with MIME type undefined.
map2.php:50loc ::: Object    
    86ad04fb-1da5-4118-8b00-942676d62387: Array[1]
        0: "new google.maps.LatLng(51,-82)"
        length: 1
    __proto__: Array[0]
__proto__: Object
长数字(86ad04…)是用户ID(键),但如果我发送新坐标,它将覆盖而不是追加。如果能得到任何帮助,我将不胜感激


谢谢

,因为您每次进入功能时都会清空
loc

var loc = {};

您需要放置
var loc={}在ajax回调之外,以便在多个ajax请求中保留其状态。

我知道这很简单。谢谢你的快速回复!