所以我试图建立自己的调试器。以下是我希望输出显示的方式:
kills: 7
level: 60
weapon: sniper
这些值将显示在黑色矩形中,可以使用鼠标在屏幕上拖动。到目前为止这是做什么的。 (我删除了除Text命令之外的所有视觉效果) 注意:我正在使用Khan学院,因此代码看起来会略有不同。
var kills = 0;
var level = 10;
var weapon = 'sniper';
var input = [kills,level,weapon];
var debug1 = function(data){
for(var i = 0; i < data.length; i ++){
text(data[i],mouseX + (i*30) + 4,mouseY - 75);
}
};
var draw = function() {
debug1(input);
};
代码说明:顶部的Vars只是示例Vars。我想要debug1(){};能够承担任何和所有变量。 我的输出结果是什么样的(与我希望它们看起来相似):
0
60
sniper
我的问题:我找不到将名称栏打印到屏幕的方法!在我的格式化打印中,我希望Var名称与它所拥有的数据相关联。但无论何时(但是)我尝试在var 名称中打印,我总是以它的值结束。这使我的调试器无用,因为即使打印出值,我也无法告诉数据所连接的 vars。请通过展示一种方法来帮助我!我尝试过的事情:
data[i].text
"data[i]"
答案 0 :(得分:0)
您是否可以选择将数据设为关联数组 即
input = [Kills: kills, Level: level, Weapon: weapon]
所以你可以将它们称为Key / Val对吗? 然后你可以使用像
这样的东西$.each(data, function(key, value) {
text(key + ': '+ value,mouseX + (i*30) + 4,mouseY - 75);
});
这可能是解决问题的一种方法(还没有测试过,但似乎很直接)