举例:1,2,3,4,5,6,7,8,9,10
1,3,5,7,9
1,5,9
1,9
<script>
// 计算剩余数 1-100,每次删除偶数位,直到剩余两个数,除了1,另一个是几
var arr = [];
for (i = 0; i < 100; i++) {
arr[i] = i + 1;
}
document.write(arr + "<br>");
do {
for (j = 0; j < arr.length; j++) {
if (j % 2) {
delete arr[j];
};
}
for (j = 0; j < arr.length; j++) {
if (arr[j] == undefined) arr.splice(j, 1);
}
document.write(arr + "<br>");
} while (arr.length > 2);
</script>
如果直接删除之后,索引会变化,所以先改成undefined,然后从头遍历删除