javascript - 无法读取未定义 jquery 的属性“推送”
问题描述
我正面临一个问题,因为我做了正确的方法,但不幸的是给了我错误“Uncought TypeError:无法读取未定义的属性'push'”下面是示例代码
var parametersData = {};
data.dateList.forEach((date, index) => {
parametersData[date].push(date);
parametersData['success'].push(data.report[date]['success']);
parametersData['unsuccess'].push(data.report[date]['unsuccess']);
});
解决方案
parametersData
是一个对象。你不能push()
进入一个对象,只能进入一个数组。
但是,由于data.dateList
它本身似乎是一个数组,并且您正在使用 aforEach()
来遍历它,所以您的输出也必须是一个数组。因此,您可以map()
改用;
let parametersData = data.dateList.map(date => ({
[date]: date,
success: data.report[date].success,
unsuccess: data.report[date].unsuccess
}));
let data = {
dateList: ['01/01/2020', '02/02/2020'],
report: {
'01/01/2020': {
success: 's1',
unsuccess: 'us1'
},
'02/02/2020': {
success: 's2',
unsuccess: 'us2'
}
}
}
let parametersData = data.dateList.map(date => ({
[date]: date,
success: data.report[date].success,
unsuccess: data.report[date].unsuccess
}));
console.log(parametersData);
推荐阅读
- asp.net-mvc - WebActivatorEx 启动方法未运行
- apostrophe-cms - 在 ApostropheCMS 中将 JS 从 npm 模块推送到浏览器
- python - Google Bigquery 存储:读取 to_dataframe 时出现 DeadlineExceeded 错误
- spring - 未对 @Transactional 注解执行回滚
- python-3.x - 是否可以在不定义顺序或关键字之间的单词数的情况下使用基于空间规则的匹配?
- node.js - 断言传递给存根函数的函数是正确的函数
- javascript - 如何在 Tempus Dominus datetimepicker 中修复“未捕获的类型错误:无法读取未定义的属性‘格式’”?
- php - 在外键约束错误中需要的学说
- amazon-web-services - 如何在将数据从 S3 存储桶(使用 kms 密钥)复制到 Redshift 时删除访问被拒绝错误。(S3 存储桶在跨账户中)?
- android - 编辑音乐标题在 Android Q 中不起作用?