如何访问对象的键值?希望从对象数据填充表
How do I access an object's keys' values? Looking to populate a table from object data
上下文:javascript的新手,并尝试创建一个学生贷款计算器网络应用程序进行练习。目前正在处理"第 1 部分",您可以在其中提交贷款、余额和利率;当您添加贷款时,将填充一个包含您提交的贷款的表格。
- 在表单提交时,输入数据用于使用对象构造函数创建新对象 (loanObj)。该新对象被推送到数组(loanArray)中进行存储。
- 在表单提交时,我希望一个表格自动填充 loanObj 的数据。我尝试通过遍历 loanArray 来计算每个对象的数量,然后遍历每个对象的键,在此过程中创建表行和单元格。
到目前为止,除了访问键的值之外,我能够做所有这些事情。 即它输出"未定义"而不是 5000 和 5% 等。
以下是与我的问题相关的代码片段:
for (var i = 0; i < loanArray.length; i++) {
//create table row for each loan object in array
var tr = document.createElement('tr');
//create table cell for each loan property (keys)
var loanKeys = Object.keys(loanArray[i]);
for (var j = 0; j < loanKeys.length; j++) {
var td = document.createElement('td');
//create text node for key data
td.appendChild(document.createTextNode(loanKeys[j].value));
tr.appendChild(td);
}
tableBody.appendChild(tr);
}
完整的小提琴是: http://jsfiddle.net/v5goLto9/1/
请帮助菜鸟!并随时给我关于我的代码结构/逻辑/整体的反馈!
您可以
直接迭代对象值,而无需键,如以下代码所示:
for (var i = 0; i < loanArray.length; i++) {
//create table row for each loan object in array
var tr = document.createElement('tr');
//create table cell for each loan property (keys)
for (var j in loanArray[i]) {
var td = document.createElement('td');
//create text node for key data
td.appendChild(document.createTextNode(loanArray[i][j]));
tr.appendChild(td);
}
tableBody.appendChild(tr);
}
相关文章:
- 引用对象中的通用值
- jQuery匹配JSON对象的部分文本
- 节点导出返回一个空对象
- 如何在Javascript中将JSon对象转换为数组
- 我可以在json对象中添加一个函数吗
- 使用JS将数组转换为json对象
- 全局变量和全局对象的属性之间有什么区别吗
- 我正在尝试用D3可视化我的json对象.我希望日期是x轴,y是销售额.数值存储为字符串
- 我只想在警报中打印数据,但每当它提醒我 [对象对象] 但我希望它会显示我的表数据行
- 如何访问对象的键值?希望从对象数据填充表
- 希望当字符串部分或完全匹配对象中的值时返回此函数
- javascript对象声明没有按我希望的方式工作
- 关于Javascript中函数对象的作用域的快速介绍(我希望很简单!)..ode>
- 希望使用Angular将表单中的数据作为JSON数组中的新对象提交
- 我在JavaScript中有一个JSON对象,并希望从字符串变量访问一个键
- 使用ng-repeat动态创建对象,希望默认选中复选框
- 检查一个对象是否是一个有希望的函数
- Jasmine间谍希望被称为";对象(..)"
- Don'当从String-help实例化对象时,不希望使用eval
- 在删除对象之前,希望在jQuery中对其同级执行一些功能