首页 > 解决方案 > Javascript:分配给函数内全局变量的值在函数外变为“未定义”

问题描述

我正在使用以下代码使用 Javascript 访问 SoundCloud 播放列表。所以 Soundcloud 会API返回一个包含整个播放列表详细信息的 JSON 文档,其中还包含 52 首曲目。因此,我将 track_id[] 全局变量分配给其中的所有轨道 ID。但是它的值在函数内部是有效的。但是当我尝试在函数之外使用该值时,它会显示“未定义”。所以我想在函数外使用轨道ID来播放与该轨道ID相关的轨道。所以请帮我做。

var i = 843490127;
var track_id = [];
SC.get('/playlists/' + i).then(function(playlist) {
    playlist.tracks.forEach(function(track, index) {
        track_id[index] = track.id;
    });
    console.log("value [1]" + track_id[1]); //value valid 
});
console.log("value [1]" + track_id[1]); //undefined

代码的输出

标签: javascript

解决方案


推荐阅读