JavaScript为什么我的全局数组变为空?Console.log会短暂显示正确的值
我不知道这里到底出了什么问题,我相信这很简单,但要找到它并不容易,所以如果其他地方已经回答了这个问题,我很抱歉 情况: 我在js文件顶部声明了一个全局数组:JavaScript为什么我的全局数组变为空?Console.log会短暂显示正确的值,javascript,jquery,Javascript,Jquery,我不知道这里到底出了什么问题,我相信这很简单,但要找到它并不容易,所以如果其他地方已经回答了这个问题,我很抱歉 情况: 我在js文件顶部声明了一个全局数组: var question_ids = []; 数组获取一些值: $(".quiz-game-container .row").each(function(loop_index) { question_ids.push($(this).attr('id')); } 现在我想显示一个计数器,它具有数组的长度: $(document)
var question_ids = [];
数组获取一些值:
$(".quiz-game-container .row").each(function(loop_index) {
question_ids.push($(this).attr('id'));
}
现在我想显示一个计数器,它具有数组的长度:
$(document).ready(function() {
// Sets the question info how many questions in total
console.log(question_ids.length);
$(".quiz-game-container .quiz-container .current-question-number").html("1/", question_ids.length);
});
问题
奇怪的是,我在browser developer控制台中看到了正确的console.log输出(长度为10),但它在1秒后消失(可能在加载所有内容时),并且没有任何值,我在html视图中得到1/
下面是正在消失的console.log的一个实例:
点击刷新按钮F5
并查看控制台,console.log输出将显示片刻,然后消失
编辑
点击刷新按钮F5
并查看控制台,console.log输出将显示一段时间,然后消失
这似乎是一个浏览器问题。它在FireFox上运行良好。更换此部件
.html("1/", question_ids.length)
与
更换此部件
.html("1/", question_ids.length)
与
替换(“1/”,问题长度)
与:
(“1/”+问题长度)
。
您希望联接两个变量,而不是将两个值赋给.html()
函数。替换(“1/”,question\u id.length)
与:
(“1/”+问题长度)
。
您希望联接两个变量,而不是将两个值赋给
.html()
函数。$。html只接受一个参数:
更改此项:
.html("1/", question_ids.length);
为此:
.html("1/" + question_ids.length);
$.html只接受一个参数: 更改此项:
.html("1/", question_ids.length);
为此:
.html("1/" + question_ids.length);
缺少一些代码。数组是如何用值填充的?@Pointy您有
question_id.push($(this.attr('id'))代码>$(“.quick game container.quick container.current question number”).html(“1/”+question_id.length);尝试使用.text(“1/”+疑问词\u id.length)
它消失是什么意思?您使用的是哪种浏览器?通常,当你刷新页面时,控制台会被清空。缺少一些代码。数组是如何用值填充的?@Pointy您有question_id.push($(this.attr('id'))代码>$(“.quick game container.quick container.current question number”).html(“1/”+question_id.length);尝试使用.text(“1/”+疑问词\u id.length)
它消失是什么意思?您使用的是哪种浏览器?通常,刷新页面时控制台会被清除。为什么会有帮助?因为,是方法参数的分隔符而不是连接运算符。为什么会有帮助?因为,是方法参数的分隔符而不是连接运算符。谢谢!但是为什么console.log输出消失了呢?谢谢!但是为什么console.log输出消失了呢?谢谢!但是为什么console.log输出会消失呢?它不能从控制台消失。你这是什么意思?对我来说它并没有消失。你使用什么浏览器?我使用Chrome浏览器,在firefox上,输出保持不变。这似乎是一个浏览器问题。我已经用Chrome和Firefox进行了测试,它们都能正常工作。谢谢!但是为什么console.log输出会消失呢?它不能从控制台消失。你这是什么意思?对我来说它并没有消失。你使用什么浏览器?我使用Chrome浏览器,在firefox上,输出保持不变。这似乎是一个浏览器问题。我已经用Chrome和Firefox进行了测试,它们都能正常工作。