没有结果我的javascript数组为什么
there is no result my javascript array WHY?
我推数据数组,我可以在数组中看到它,但在函数之外,数组中没有数据,为什么?
函数keyWordsearch() {
var musicIDs = [];
gapi.client.setApiKey('AIzaSyB2O-w22OSJVSKPhAYsK_zxX7FsThM0mhE');
gapi.client.load('youtube', 'v3', function () {
idlist = '';
var q = $('#querySerach').val();
$("#result").empty();
var request = gapi.client.youtube.search.list({
q: q,
part: 'snippet',
maxResults: 3,
});
request.execute(function (response) {
for (var i = 0; i < response.items.length; i++) {
var musicid2 = response.items[i].id.videoId;
musicIDs.push(musicid2);
// i push data array i can see it in array but out of function there is no data in array why ?? ------
var pID = '#myPlayerID';
var ratio = '4/3';
}
});
});
alert(musicIDs[1]); // here is musicID[1] return undefined
}
Ajax调用是异步的,所以您必须在调用api的响应函数中执行alert
。在本例中,在request.execute(function (response) {
request.execute(function (response) {
for (var i = 0; i < response.items.length; i++) {
var musicid2 = response.items[i].id.videoId;
musicIDs.push(musicid2);
var pID = '#myPlayerID';
var ratio = '4/3';
}
alert(musicIDs[1]);
}
更多信息在这里
相关文章:
- JavaScript-为什么我可以在数组中设置键
- 为什么当我在数组上测试regex时,它会返回false
- 为什么不't htmlCollection从数组继承
- 为什么从数组调用时收到非法调用
- 为什么typeof的数组的数组的未定义值返回为“0”;未定义的“;我的条件不认为是真的
- 为什么用javascript覆盖2D数组的元素
- 就地反转数组为什么不起作用
- 为什么数组在对象内部迭代对象时存储重复值
- 为什么Angularjs服务返回的是字符数组而不是对象数组
- 为什么没有从数组中存在的对象中删除属性
- 为什么我的JavaScript函数没有返回选中的数组值
- 为什么不't loadash/aunderline将util方法放在数组原型上
- 为什么使用“new”创建一个Javascript数组被认为是不好的
- 为什么AngularJS$scope.watch()在我告诉它监视数组时会停止工作
- 为什么空数组上的 indexOf 不返回 -1
- 为什么这个 fs.readFile 循环没有将其结果推送到我的数组
- 为什么删除运算符不更改数组的长度
- 没有结果我的javascript数组为什么
- 在Javascript中迭代对象数组-为什么我不能在增量块中获得当前对象
- Javascript数组:为什么这是无效的