js里面用if判断数组第一个是否是参数undefined和我是否传入给第一个数组的值为undefined
时间: 2024-02-17 13:05:08 浏览: 77
Js判断参数(String,Array,Object)是否为undefined或者值为空
可以用如下代码来判断数组第一个元素是否是参数 undefined,并且判断是否传入了初始值:
```javascript
function myReduce(array, callback, initialValue) {
let accumulator = initialValue !== undefined ? initialValue : array[0];
let startIndex = initialValue !== undefined ? 0 : 1;
for (let i = startIndex; i < array.length; i++) {
accumulator = callback(accumulator, array[i], i, array);
}
return accumulator;
}
```
在这个代码中,我们首先判断传入的初始值是否为 undefined,如果不是,则使用它作为累加器的初始值。如果是,则使用数组的第一个元素作为累加器的初始值。
同时,我们还定义了一个变量 startIndex,用于确定从数组的哪个索引开始遍历。如果传入了初始值,则从数组的第一个元素开始遍历;否则从第二个元素开始。
在循环中,我们使用回调函数对累加器和当前元素进行计算,最后返回累加器的值。
阅读全文