TypeError:无法读取未定义的属性“ 0”(applyHooks.js)

时间:2018-10-26 20:14:24

标签: javascript node.js mongodb mongoose

enter image description here

enter image description here

为什么出现?我安装了所有依赖项,现在被卡在这里了。

1 个答案:

答案 0 :(得分:0)

TypeError :当值不是预期类型时, TypeError 对象表示错误。

您正在尝试访问变量pair的第零个索引,即undefined。在数组pair的索引i处为q分配了一个值。由于所提供的信息有限,没有提供q的值,因此很难正确提供解决方案。

undefined :全局 undefined 属性表示原始值undefined。它是JavaScript的原始类型之一。

由于undefined对象不是字符串或数组,因此访问它的第零个索引将产生错误。 pair的值为undefined,因为数组q的数组可能像[undefined, undefined, undefined]。将要求您先检查q的值,然后再检查pair的值,然后再对这些变量执行任何操作。

如何形成像[undefined, undefined, ...]这样的数组:

var b;  // Since b is not assigned any value thus it's undefined
var q = [];
q.push(b);   // Repeat this few more time and whole array of [undefined, undefined, ...] will be created with length > 0

建议先使用JavaScript documentation,然后再使用它的功能以避免错误并最好使用JavaScript。