gpt4 book ai didi

javascript 数组索引测试

转载 作者:行者123 更新时间:2023-11-30 10:53:35 25 4
gpt4 key购买 nike

如果我有一个正在循环遍历的数组 myArray:

for(var i=0;i<myArray.length;i++) {
if(myArray[i] == myArray[i+1])
//do something
}

显然,myArray[i+1] 将在最后一次迭代中失败。除了测试 if i == (myArray.length - 1) 之外,是否有一种干净的方法可以在该 if 语句上不失败并使其评估为 false (if myArray[i+ 1] 越界)?

最佳答案

为什么不直接迭代到第 (N-2) 项?

for(var i=0;i<myArray.length-1;i++) {
...

如果您必须迭代到最后,通常唯一可行的方法是显式检查索引是否有效。要么

for (var i = 0; i < myArray.length; ++ i)
if (i+1 != myArray.length) {
...

for (var i = 0; i < myArray.length; ++ i)
if (!(i+1 in myArray)) {
...

但是,如果您可以确保数组中的所有项目都不能是 undefinednull,那么您的原始代码已经可以工作,因为索引越界将返回undefined,并且 undefined == x 将为 false,除非 x 也是 undefinednull.

关于javascript 数组索引测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3761375/

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