javascript - 在 JavaScript 中对字符串调用 forEach
问题描述
我在 JS 方面没有那么丰富的经验,所以也许这是一个非常幼稚的问题。我试着打电话
"".forEach((e, i) => {
console.log(e)
})
我收到一个错误,说这forEach
不是字符串的函数。然而,当我打电话时:
Object.getOwnProperyNames("")
我可以清楚地看到它forEach()
在 string 和 type 的原型中function
。
为什么我不能在字符串上调用它?
解决方案
Object.getOwnPropertyNames
返回一个数组,你可以遍历一个数组——这并不奇怪。
至于用循环遍历字符串forEach
,你不能——你只能使用for
循环。也就是说,遍历一个字符串。一种快速简便的使用方法forEach
是将字符串展开到数组中:
[..."Hello, World!"].forEach((e, i) => console.log(e));
或者,如果它包含某些字符:
Array.from("Hello, World!").forEach((e, i) => console.log(e));
推荐阅读
- python - 线程 'Thread-1' 中没有当前事件循环
- animation - Vue 3 项目中简单的路由器滑动过渡
- crystal-reports - 每当我拖动 Crystal Report Viewer 以显示表单时,它会下降而不从视图中显示
- arrays - 为什么每个值都没有初始化为 0?
- perl - 用于 DNA 序列反向互补的 Perl 代码
- asp.net-core - .Net Core 服务器端模型验证通过不显眼的 ajax 表单
- php - 如何使用foreach从html标签中获取动态值并将其保存到jquery变量以供momentObj
- java - 我可以将一些数组作为字段放在 java 类中并使用本机方法访问它吗?
- reactjs - 未处理的拒绝(TypeError):无法读取未定义的属性“signUp”
- django - Django电子邮件模板中的图像未加载到电子邮件中