gpt4 book ai didi

javascript - 循环赋值然后中断

转载 作者:行者123 更新时间:2023-12-03 07:16:38 24 4
gpt4 key购买 nike

我有 C/Python 背景,下面的 JavaScript 代码让我感到困惑。为什么程序结束时c的值不是6?因为我们在之后分配和中断。 (我已经在 J​​SFiddle 上运行了这个)

function funct() {
var bytes = new Uint8Array(6);
bytes[0] = 228;
bytes[1] = 191;
bytes[2] = 157;
bytes[3] = 233;
bytes[4] = 153;
bytes[5] = 186;
bytes[6] = 255;
bytes[7] = 17;
bytes[8] = 23;
bytes[9] = 223;
var c = 0;
for (var i = 0; i < bytes.length; i++) {
if (bytes[i] == 255) {
c = i;
break;
}
}
console.log(i);
console.log(c);
}

funct();

输出:

6
0

最佳答案

您的数组大小为 6,但索引 6 是第 7 个条目。您需要为数组分配更多空间:

function funct() {
var bytes = new Uint8Array(10);
bytes[0] = 228;
bytes[1] = 191;
bytes[2] = 157;
bytes[3] = 233;
bytes[4] = 153;
bytes[5] = 186;
bytes[6] = 255;
bytes[7] = 17;
bytes[8] = 23;
bytes[9] = 223;
var c = 0;
for (var i = 0; i < bytes.length; i++) {
if (bytes[i] == 255) {
c = i;
break;
}
}
console.log(i);
console.log(c);
}

funct();

关于javascript - 循环赋值然后中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62457694/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com