JavaScript无法调用push方法向类内数组推入对象问题咨询
故障排查结果
核心错误是MemberGroup类的构造方法名拼写错误:
- JavaScript 类的构造方法固定名称为
constructor,你的代码中写为constrctor,漏写了字母u,该方法不会被引擎识别为类构造函数 - 实例化
MemberGroup时会执行默认空构造函数,生成的Members实例上不存在你预期的List数组属性 - 此时
Members.List的值为undefined,对undefined调用数组的push方法会直接抛出类型错误,无法完成存入操作
错误代码片段:
class MemberGroup { // 拼写错误,不会作为构造函数执行 constrctor() { this.List = []; } }
修复方法
将构造方法名修正为正确拼写即可:
class MemberGroup { constructor() { this.List = []; } }
修正后重新执行代码,push操作可正常运行,Member实例会被正确存入Members.List数组,可通过打印Members.List验证结果。
内容的提问来源于stack exchange,提问作者Zwanez
相关产品推荐
相关产品推荐

