如何仅使用数组方法计算JavaScript中数组的双值

如何仅使用数组方法计算JavaScript中数组的双值,javascript,arrays,Javascript,Arrays,你好 我被赋予了一项任务: 以下是我迄今为止所做的尝试: [1、5、5、1、1、1、1、5、5、5、5、5、2、2、2、4、4、2、2、3、3、2、2、4、4、4、4、4、4、2、2、3、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、4、4、4、4、2、2、3、2、2、2、2、4、4、2、4、4、2、4、4、2、4、2、4、4、2、2、4、2、4、4、2、2、4、4、2、4、2、4、4、2、4、4、2、4、4、4、2、4、4、2、4、4、4、4、2、2、4、2、4、4、4、4

你好

我被赋予了一项任务:

以下是我迄今为止所做的尝试:

[1、5、5、1、1、1、1、5、5、5、5、5、2、2、2、4、4、2、2、3、3、2、2、4、4、4、4、4、4、2、2、3、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、4、4、4、4、2、2、3、2、2、2、2、4、4、2、4、4、2、4、4、2、4、2、4、4、2、2、4、2、4、4、2、2、4、4、2、4、2、4、4、2、4、4、2、4、4、4、2、4、4、2、4、4、4、4、2、2、4、2、4、4、4、4、2、4、4、4、2、4、4、4、4、4、[4,2,5,1,4,2,4,2,3,2,4,1]; document.writelnmyArray元素; document.writelnmyArray+; document.writelnmyArray有+myArray.length+元素+; document.writelnMy数组排序:; myArray.SortFunction a,b{ 返回a-b };; document.writelnmyArray+; document.writelnFirst出现数字+?+在myArray中,排序在索引处:+myArray.indexOf1+; document.writelnFirst出现数字+?+在myArray中,排序在索引处:+myArray.indexOf2+; document.writelnFirst出现数字+?+在myArray中,排序在索引处:+myArray.indexOf3+; document.writelnFirst出现数字+?+在myArray中,排序在索引处:+myArray.indexOf4+; document.writelnFirst出现数字+?+在myArray中,排序位于索引:+myArray.indexOf5+; document.writelnmyArray包含+?+数字+?+的出现; document.writelnmyArray包含+?+数字+?+的出现; document.writelnmyArray包含+?+数字+?+的出现; document.writelnmyArray包含+?+数字+?+的出现; document.writelnmyArray包含+?+数字+?+的出现; 任务2与阵列 任务2与阵列
提示:如果数组已正确排序,则第一次出现的2将对所有1进行计数

myArray.indexOf(2) - myArray.indexOf(1)
正在计算1的所有出现次数

只要做一些简单的数学运算,找出其他数字的位置和数量

使用提供的工具,我认为没有办法动态查找数组中的所有唯一数字,您需要对它们进行硬编码。

[1、5、5、1、1、1、1、5、5、5、5、5、2、2、2、4、4、2、2、3、3、2、2、4、4、4、4、4、4、2、2、3、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、2、4、4、4、4、2、2、3、2、2、2、2、4、4、2、4、4、2、4、4、2、4、2、4、4、2、2、4、2、4、4、2、2、4、4、2、4、2、4、4、2、4、4、2、4、4、4、2、4、4、2、4、4、4、4、2、2、4、2、4、4、4、4、2、4、4、4、2、4、4、4、4、4、[4,2,5,1,4,2,4,2,3,2,4,1]; document.writelnmyArray元素; document.writelnmyArray+; document.writelnmyArray有+myArray.length+元素+; document.writelnMy数组排序:; myArray.SortFunction a,b{ 返回a-b };; document.writelnmyArray+; document.writelnFirst出现在myArray排序中的数字+1+位于索引:+myArray.indexOf1+; document.writelnfix排序的myArray中第一次出现的数字+2+位于索引:+myArray.indexOf2+; document.writelnFirst出现在排序的myArray中的数字+3+位于索引:+myArray.indexOf3+; document.writelnFirst出现在myArray排序中的数字+4+位于索引:+myArray.indexOf4+; document.writelnfix排序的myArray中第一次出现的数字+5+位于索引:+myArray.indexOf5+; document.writelnmyArray包含+myArray.indexOf2-myArray.indexOf1+数字的出现次数+1+; document.writelnmyArray包含+myArray.indexOf3-myArray.indexOf2+数字的出现+2+; document.writelnmyArray包含+myArray.indexOf4-myArray.indexOf3+数字的出现次数+3+; document.writelnmyArray包含+myArray.indexOf5-myArray.indexOf4+数字的出现次数+4+; document.writelnmyArray包含+myArray.length-myArray.indexOf5+数字的出现次数+5+; 任务2与阵列 任务2与阵列
您拥有排序数组中所有数字的第一个匹配项。因此,您可以执行简单的减法来获得每两个相邻数字的第一次出现索引之间的差。

是否允许lastIndexOf?如果您不能使用lastIndexOf,则可以将数组按相反顺序排序,然后使用indexOf。然后对索引和长度做一点数学运算,找出数组中有多少个特定的数字。从这个问题上看,什么可以硬编码还不清楚。myArray中第一次出现的数字1中的1是否在索引处排序:固定文本的一部分?事实上有五个这样的短语是预先定义的吗?我想是的,就像限制一样,不可能使其动态化。我不这样认为,我被允许使用lastIndexOf。因为从指令中你可以看到,它说我们只能使用:length属性,toString sort indexof减法可以作为一个选项,但是你可以看到,我不清楚我是否可以这样做,它只是说我不能使用循环和条件语句。但是我会尝试一下,就像你说的那样,它可能会起作用,但是现在可以肯定的是,从他们的观点来看,这是否算是正确的答案=你的权利,因为我不允许使用任何循环或条件语句。日分 t根据上面提供的图片,任务应该完成。我非常感谢你的帮助和时间。谢谢