为什么我收到 TypeError: array[i] is undefined? [复制]

2024-07-01

因此,在我的程序中,我有一个包含值的字典/散列的数组,当我循环遍历该数组时,我得到了我需要的值,但 for 循环之后的任何代码都不会执行,因为控制台输出:

TypeError: array[i] is undefined


var array = [
  {"name": "a", "pos": "C"},
  {"name": "b", "pos": "B"},
  {"name": "c", "pos": "W"},
];


for(var i = 0; i <= array.length; i++) {
  console.log(array[i]['pos'];
}
console.log("some other code");

我不明白为什么会发生这种情况,我需要执行 for 循环下面的代码。有谁知道为什么会发生这种情况以及我应该做什么来解决它?


Issues

  1. 你还没有附上你的第一个console.log功能。
  2. 由于数组的索引为零,因此您的条件less than or equal to将使循环尝试使用undefined数组的一部分(大于总长度)。因此使用less than操作员。

固定代码

var array = [
  {"name": "a", "pos": "C"},
  {"name": "b", "pos": "B"},
  {"name": "c", "pos": "W"},
];


for(var i = 0; i < array.length; i++) {
  console.log(array[i]['pos']);
}

console.log("some other code");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么我收到 TypeError: array[i] is undefined? [复制] 的相关文章

  • jQuery 在变量中搜索文本?

    我有一个变量 其中包含一些文本 一些html 基本上可以是一个字符串 我需要在变量中搜索特定字符串 以便在包含该变量时以不同方式处理该变量 这是我正在尝试做的事情的一个片段 显然不起作用 each data results function
  • 在 Javascript 中访问对象属性

    我正在尝试访问电子邮件和密码字段 但我不知道在哪里 0 来了 我正在从 rethinkdb 检索对象 它看起来不错 没有 0 但后来我使用 Lodash assign 像这样的方法 var user new User var finduse
  • .catch() 的承诺被拒绝,但在 Promise.allSettled 中显示为已履行[重复]

    这个问题在这里已经有答案了 这是问题的简化版本 有一些承诺 但很少 then 链条 以及一个 catch 错误处理块 每个承诺都可能解决或拒绝 因此我使用Promise allSetted根据排列顺序和状态了解哪个承诺失败了 当所有承诺都解
  • 邪恶的 Firefox 错误——“底层对象不支持参数或操作”

    我想弄清楚这里发生了什么事 我已经研究了几个小时了 似乎无法理解为什么会发生这种情况 我正在进行一些 AJAX 调用 但仅在 Mac OS X 上的 Firefox 版本 21 中不断收到此错误 这是错误 Exception A param
  • React 组件使用 useState 渲染两次

    当没有任何东西被用来触发重新渲染组件时 我真的很难弄清楚发生了什么 Events js当我删除组件时 组件渲染两次useState 来自Event js它渲染一次 但我需要保留它 当我使用useEffect 在事件组件内 第四次渲染 我只是
  • dc.js 和 crossfilter 减少了一周中每天的平均计数

    我很难正确设置我的交叉过滤器组 也许有人可以给个提示 我的数据结构看起来或多或少是这样的 datetime 2014 01 01 20 00 00 id 1 datetime 2014 01 01 22 21 08 id 2 datetim
  • Tensorflow.js 与 React-Native

    我知道tensor flow js是一个以网络为中心的库 但出于好奇 我也在react native上尝试了它 它有点有效 它仅适用于调试模式 并在调试模式关闭时抛出错误 错误说窗口 位置 搜索不是一个对象 经过一些研究 我发现窗口对象是在
  • Phantomjs / Casper.js 带有旋转代理?

    我有一个简单的目标 使用以下任一方式加载网页phantom js 开箱即用 或casper js 很好也更容易 但是使用代理并旋转它如果当前列表不好 即网页加载失败或类似情况 则从列表中选择 我知道 casper js 有 proxypar
  • 未捕获的 NotFoundError:无法在“Node”上执行“insertBefore”:

    我有一个div另外三个里面的哪里div附加如下 状态值是通过循环 api 的结果来设置的componentWillReceiveProps 但我遇到了一个错误的问题 Uncaught NotFoundError Failed to exec
  • 全选/取消全选页面中的复选框

    我看过this http railsforum com viewtopic php id 2151这似乎对我的代码没有影响 我试过了this https stackoverflow com questions 888173 select a
  • MomentJS:如何将 MM/DD/YYYY 中的日期解析为 DD/MM/YYYY

    如何在澳大利亚和美国时间格式中使用 moment js 例如 07 08 2017 对于两种时间格式都有好处 但是 30 08 2017 对于 moment js 无效 但我可以有这样的 dateTime 您可以在这里检查 http jsf
  • 显示为问号的度unicode

    以下代码显示为问号而不是度数符号 var airF Math round Number MDTMOBILE RWISWeather i AirTemp u00B0 F tempTable find td eq 4 text airF var
  • 当没有电子邮件客户端时,“mailto:”会做什么?

    我正在开发一个网站 什么是mailto 如果没有电子邮件客户端 如 Outlook Thunderbird 等 如何打开 它可以在我的电脑上运行 该电脑装有 Outlook 但如果有人想要怎么办 mailto 例如 在 gmail com
  • d3.js 雷达图 - 填充线条之间

    我正在尝试在其中两个三角形之间创建填充 例如在红色和绿色三角形之间创建红色填充 有人知道如何做到这一点吗 我见过另一个雷达图的例子 我相信它做了类似的事情 尽管我认为他们使用CSS而不是d3创建填充 使用径向图用 mbostock 的答案解
  • AngularJS ui-router:如何全局解析所有路由的典型数据?

    我有一个 AngularJS 服务 它与服务器通信并返回 申请表不同部分的翻译 angular module utils service Translations q http function q http translationsSer
  • 如何将网页从一个域重定向到另一个域?

    当第一个域 网页 加载时 如何将域重定向到另一个域 纯 HTML 替代方案如下HTML 中的标签 The 0这里是页面在重定向之前必须保持打开状态的秒数 在这种情况下 一旦您加载页面 它就会立即发生 与建议的 JS 解决方案相反 这在禁用
  • 使用 grunt js,如何监视 .coffee 文件的变化?

    我是 gruntjs 新手 这是我的简单 gruntfile global module false module exports function grunt Project configuration grunt initConfig
  • Android - 循环 strings.xml 文件

    我想知道是否有办法循环strings xml file 假设我有以下格式
  • 如何将特殊字符 (0x80..0x9F) 写入 Windows 控制台?

    我想要这段代码 System Console Out WriteLine il display il代替oil正如我的测试程序中所做的那样 The Console OutputEncoding默认设置为Western European DO
  • put 不会将内容打印到控制台

    我在用着POW http pow cx 促进当地铁路发展 我不知道为什么 但我不能print or puts信息到我的development log 我想将变量的内容从我的控制器放入控制台 日志 有什么建议吗 我读我的日志tail f lo

随机推荐