javascript - console.log 没有显示我数组中的对象
问题描述
我目前正在制作一个生物繁殖游戏计算器/滚轮,但我遇到了一个我似乎无法弄清楚的奇怪问题。
我不太确定如何解释它,但最终的问题是我从父亲的遗传信息中提取的“基因缩写”没有出现在婴儿的数组中。我使用的数学应该使基因以 99% 通过,这意味着它肯定应该在数组中,但实际上并没有出现?我尝试了一堆不同的方法,我也从这里开始查找,但似乎没有任何问题。
我在 console.log 中检查了这个,数组显示为空,但是如果你在控制台中展开它,你可以看到它里面有值!我不确定我做错了什么,它阻止我继续我计划的其余代码。由于基因缩写实际上不在阵列中,因此阵列不会向孩子的遗传信息推送任何内容。(虽然我可能错了,因为我实际上不是编码器,但是当我到达它时我会越过下一座桥哈哈)
滚筒本身位于 [ http://seabirdtestroller.neocities.com ],因此您可以尝试一下,看看它是如何工作的。您将需要在输入字段中输入我占位符的确切文本,因为现在这些是我正在测试的唯一基因缩写,并且目前仅从父亲这边读取
这里是整个 genohell.js 文件以供快速参考,但它也从 rollmath.js 文件中提取信息(来自 roll 站点):
function makeGeno(){
var geneArray = [];
$babyGenes = geneArray;
console.log("Dad: " + $DadGenes);
//console.log("Mom: " + $MomGenes);
console.log($babyGenes);
var allGenes = {
"free" : [
{ "rec" : "nA",
"dom" : "AA",
"phen" : "Ash"
},
{ "rec" : "nPn",
"dom" : "PnPn",
"phen" : "Pangare"
},
{ "rec" : "nPt",
"dom" : "PtPt",
"phen" : "Points"
},
{ "rec" : "nS",
"dom" : "SS",
"phen" : "Soot"
},
{ "rec" : "nSa",
"dom" : "SaSa",
"phen" : "Sable"
},
{ "rec" : "nSc",
"dom" : "ScSc",
"phen" : "Scruff"
},
{ "rec" : "nSk",
"dom" : "SkSk",
"phen" : "Skull"
}
]
}
/*-------------------------------- CALC HELL -------------------------------------------*/
if($DadGenes.includes("nA")){
$passrate = Math.floor((Math.random() * 100) + 1);
if($passrate <= 99){
geneArray.push("nA");
}
}
if($DadGenes.includes("nPn")){
$passrate = Math.floor((Math.random() * 100) + 1);
if($passrate <= 99){
geneArray.push("nPn");
}
}
}
我尝试过但似乎对我不起作用的事情:
- JSON.stringify();
- .toString();
- 。加入()
- .slice(0);
- .concat();
在控制台中修复 babyGenes 数组以便实际出现值的任何想法将不胜感激,谢谢!:)
解决方案
当在控制台中单击之前某个东西看起来是空的,这通常意味着在console.log
运行时数组是空的,但是当你打开它时它是满的。你在console.log
这里打电话:
var geneArray = [];
$babyGenes = geneArray;
push
您正在记录它,而它是空的,当您完成所有ing后应该记录它时。
if($DadGenes.includes("nPn")){
$passrate = Math.floor((Math.random() * 100) + 1);
if($passrate <= 99){
geneArray.push("nPn");
}
}
// now, log the array
var geneArray = [];
$babyGenes = geneArray;
console.log($babyGenes);
} // end of func
推荐阅读
- azure-web-app-service - 如何从 azure web 应用程序调用作为连续 azure webjob 运行的进程
- sql - 按日期和 ID 从平均结果中插入多行
- android - CollapsingToolbar 布局不滚动
- c - 如何检查字符串日期是否已超过某个日期
- openlayers - 缩放扩展至多个 KML 的多层边界
- java - 递归地实现与列表元素相乘的 q 的幂和
- python-3.x - 如何通过python pandas将带有键值对(都具有整数值)的字典写入excel
- angular - 带有创建选项的 Angular 材质下拉菜单
- swift - 将html文本转换为纯文本时是否有任何功能可以制作可触摸的url
- inno-setup - 单击完成按钮后运行应用程序(不是在安装后)