JavaScript中的嵌套数组
我有一个数组soter和一个计数器数组。我想获得count数组将提供给我的JavaScript中的嵌套数组,javascript,arrays,loops,Javascript,Arrays,Loops,我有一个数组soter和一个计数器数组。我想获得count数组将提供给我的name的编号。对吗?我对输出有点困惑。有人能用JavaScript教我这个嵌套数组循环吗 var soter = ['bp','mf','cc'], count = [0,0,0]; for(var y = 0 ; y < soter.length; y++) { for(var i = 0 ;i < data.SO_Ter.length; i++) { if(d
name
的编号。对吗?我对输出有点困惑。有人能用JavaScript教我这个嵌套数组循环吗
var soter = ['bp','mf','cc'],
count = [0,0,0];
for(var y = 0 ; y < soter.length; y++) {
for(var i = 0 ;i < data.SO_Ter.length; i++) {
if(data.SO_Ter[i].name == soter[y]) {
count[y]++;
var-soter=['bp'、'mf'、'cc'],
计数=[0,0,0];
对于(变量y=0;y
假设格式良好的对象数据和子对象也是如此,那么该代码对我来说似乎是正确的
因此,您将通过外部循环,位置0到2,并且对于其中的每一个,您将检查data.So_Ter中的每一项是否等于soter值。
如果找到该值,则递增1中的计数
这有意义吗
为了使其更容易,它将类似于:
for(var i = 0 ;i < data.SO_Ter.length; i++) {
if(data.SO_Ter[i].name == soter[0]) {
count[0]++;
for(var i = 0 ;i < data.SO_Ter.length; i++) {
if(data.SO_Ter[i].name == soter[1]) {
count[1]++;
for(var i = 0 ;i < data.SO_Ter.length; i++) {
if(data.SO_Ter[i].name == soter[2]) {
count[2]++;
for(变量i=0;i
既然你做了3次,你只需要用一个外部for循环来替换它们
更新
计数[0]表示找到单词“bp”的次数
计数[1]表示找到单词“mf”的次数
计数[2]表示单词“cc”被找到的次数您能提供有关
数据的其他信息吗?数据
是一个对象。数据
是子对象。名称
是子对象的属性对我来说似乎很好,您将得到一个整数,整数的次数是字符串在s中的次数“oter”出现在数据中。请确保soter和count的长度相同。您的结果是什么?@AAlferez您能提供一个完整的答案吗?count[0]、count[1]、count[2]是什么
representation?您正在访问您在代码中创建的计数数组,位置0、1、2,它获取该位置的值。计数数组和soter数组都具有相同的长度,因为计数[0]表示soter[0]上的单词出现的次数,计数[1]和soter[1]等的计数相同。因此,count[2]++
设置在数据中找到的cc
的数量。因此\u Ter[i]。name
?对吗?计数[2]++将增加位置2上的计数,这意味着在与数据比较时找到另一个“cc”。因此\u Ter[i],对吗