You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写JavaScript表达式检查数组是否仅包含指定类型(无return)

检查数组是否仅包含指定类型的无return实现

你的代码里用forEach是行不通的,因为forEach没有返回值,永远返回undefined,所以你的三元表达式不管数组元素类型对不对,都会得到false。

要实现你的需求,直接用数组的every方法就可以,它会遍历数组并检查每个元素是否符合条件,最后返回布尔值,而且箭头函数的表达式体可以直接返回这个结果,完全不需要写return:

const isArrayOfType = (arr, type) => arr.every(item => typeof item === type);

const arr = [1, 2, 3];
const typ = 'number';

console.log(isArrayOfType(arr, typ)); // 输出 true

测试混合类型的情况:

const mixedArr = [1, '2', 3];
console.log(isArrayOfType(mixedArr, 'number')); // 输出 false

every方法还会做短路优化——只要遇到第一个不符合条件的元素就停止遍历,比遍历全部元素的效率更高。

内容的提问来源于stack exchange,提问作者Teodor Angelov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 01:36:25