JavaScript 问题:Uncaught (in promise) TypeError: v.values(...).forEach is not a function

张开发
2026/5/9 22:51:32 15 分钟阅读
JavaScript 问题:Uncaught (in promise) TypeError: v.values(...).forEach is not a function
constvnewMap([[key1,value1],[key2,value2],[key3,value3],]);v.values().forEach((item){console.log(item);});上述代码在 Chrome 浏览器 111 版本中运行会出现如下错误信息Uncaught (in promise) TypeError: v.values(...).forEach is not a function问题原因Map 的 values 方法返回的是迭代器不是数组constvnewMap([[key1,value1],[key2,value2],[key3,value3],]);console.log(v.values());# 输出结果 MapIterator {value1, value2, value3}处理策略转换为数组Array.from(v.values()).forEach((item){console.log(item);});// 或者使用展开运算符[...v.values()].forEach((item){console.log(item);});使用 for of 循环for(constvalueofv.values()){console.log(value);}使用 Map 自带的 forEach 方法v.forEach((value,key){console.log(value,key);});补充学习在现代浏览器和Node.js环境中Map 的 values 方法返回的迭代器确实有 forEach 方法官方网址https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Iterator/forEach

更多文章