JavaScript如何获取函数内部变量

 拍友2502869293 发布于 2022-11-06 17:00
success(function(data) {
   angular.forEach(data.response.venues, function(item) {
                    var pin = {
                        latitude: parseFloat(item.location.lat),
                        longitude: parseFloat(item.location.lng),
                        title: item.name,
                        id: item.id
                    }
                    pin.options = {
                        icon: $dynamicConstants.getCdnImagesUrl() + query + '.png',
                        labelStyle: { 'overflow': 'visible' }
                    };
                    $scope.map.markers.push(pin);
                })
            }).error(function() {

            });

请问如何function(data)外获取到var pin的值?

3 个回答
    1. 直接获取不到.

    2. 在这个函数里面写个闭包函数, 被外部引用到.

    success(function(data) {
        angular.forEach(data.response.venues, function(item) {
            var pin = {
                latitude: parseFloat(item.location.lat),
                longitude: parseFloat(item.location.lng),
                title: item.name,
                id: item.id
            }
            pin.options = {
                icon: $dynamicConstants.getCdnImagesUrl() + query + '.png',
                labelStyle: { 'overflow': 'visible' }
            };
            $scope.map.markers.push(pin);
            
    
            //vvvvvvvvvvvvvvvvvv
            var getPin = function () {
                return pin;
            }
            // 被外部引用到
            window.getPin = getPin;
            //^^^^^^^^^^^^^^^^^^
    
        })
    }).error(function() {
    
    });

    但是你这里是循环, 外部引用pin有何意义?

    2022-11-11 20:23 回答
  • 可以在外面定义var pin = {};然后里面用 pin = {

                        latitude: parseFloat(item.location.lat),
                        longitude: parseFloat(item.location.lng),
                        title: item.name,
                        id: item.id
                    }
                    

    就是外面定义,里面赋值

    2022-11-11 20:32 回答
  • 把pin定义在function(data)之外,请求到数据之后给pin赋值

    2022-11-11 20:34 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有