如果我有这个特殊情况怎么办:
我的数组主体:[1,2,3,4,1,2,5,1,2,3,4,5]
我可以在这种情况下为其指定大小的其他数组宏(3):['', '', '']
所以现在我需要按照从主到宏的顺序插入值:
示例:
第一次数组宏为空但我必须按此顺序填充此数组。
macro : [1, 2 ,3]
和principal: [4,1,2,5,1,2,3,4,5]
但是现在当数组宏已满时,我需要从宏中替换一个值,但这个值必须是最后一个出现在主数组中的值。
让我试着解释一下:我在宏1,2和3中有3个值。 所以
如果我得到value = 1
我将检查主阵列 - > [ 4, **1**
我找到了1,但他不是最后一个。
现在value = 2 -> [4, 1 ,**2**
我找到了2但不是最后一个
并使用value = 3 -> [4, 1, 2 , 5 ,1 ,2 , **3**
,现在我们得到了最后一个值
在这种情况下,最后一个值将是...... 3 ,我必须用principal的第一个值替换3,我的新宏数组将是:[1,2,4]
这个问题的条件:如果我发现宏与委托之间的值相等,我需要避开他并继续下一个值
macro -> 1,2,4 principal [1,2,5,1,2,3,4,5]`
我需要避免使用1,2来自本人,并从5继续。
macro -> 1,2,4 principal [5,1,2,3,4,5]`
最后一个将是4所以我将替换宏中的4:[1,2,5]
我试图做的一段代码......
function resolution()
{
for(var i = 0; i < marcos.length; i++)
{
if(macro[i] == principal[i])
{
var exists = principal.indexOf(principal[i]);
}
if(array.length > 0)
{
//for i < array.length
macro.splice(array[i] , 1 , cadena[i])
}
else
{
macro.splice(i, 1, cadena[i]);
}
}
console.log(macro)
principal.splice(0, macro.length);
}
对于这个问题,我将不胜感激。