Javascript:循环遍历数组
Javascript: loop through array
这让我抓狂。我只是想打印出一个数组,但它不起作用。我错过了什么?results变量返回"undefined",这意味着我的for循环不能正常工作。其他一切都正常工作,我的console.log正确显示了添加到数组中的字段。
// The list of accounts array.
var accountsArray = [];
function addAccount() {
// Take fields and put user data into varables.
var accountName = document.getElementById('accountName').value;
var accountBalance = document.getElementById('accountBalance').value;
var accountType = document.getElementById("accountType");
var accountTypeSelected = accountType.options[accountType.selectedIndex].text;
var accountCurrency = document.getElementById("accountCurrency");
var accountCurrencySelected = accountCurrency.options[accountCurrency.selectedIndex].text;
// Put these variables into the array.
accountsArray.push(accountName);
accountsArray.push(accountBalance);
accountsArray.push(accountTypeSelected);
accountsArray.push(accountCurrencySelected);
// Items added to the array, logged.
console.log('user added: ' + accountsArray);
}
function accountsListHtml() {
var results;
// Loop through the array
for (var i = 0; i < accountsArray.length; i++) {
results = accountsArray[i];
}
document.getElementById('accountsList').innerHTML = results;
}
这是所有文件的链接。这是一个使用Framework7的iOS网络应用程序。Balance Pro
您正在body.onload
中调用accountsListHtml()
。此时accountsArray
为空。在你链接的页面上,我找不到任何其他拨打accountsListHtml()
的可能性。
在函数addAccount()
中添加一行,它就会工作:
function addAccount() {
/* vour code */
console.log('user added: ' + accountsArray);
accountsListHtml(); // add this line
}
尝试将results = accountsArray[i];
更改为results += accountsArray[i];
。
更新并用一个空字符串初始化results
,例如:)
for (var i = 0; i < accountsArray.length; i++) {
results = accountsArray[i];
}
for循环中的语句,即results = accountsArray[i];
,每次循环运行都会覆盖变量results
。您可以将语句更改为:
results += accountsArray[i].toString();
并将CCD_ 13初始化为空字符串。
以下内容适用于我:http://jsfiddle.net/95ztrmk3/13/
HTML:
<div id="accountsList"></div>
JS:
// The list of accounts array.
var accountsArray = [];
addAccount();
accountsListHtml();
function addAccount() {
// Take fields and put user data into varables.
var accountName = "John Doe";
var accountBalance = "500.00";
var accountTypeSelected = "Checking"
var accountCurrencySelected = "USD";
// Put these variables into the array.
accountsArray.push(accountName);
accountsArray.push(accountBalance);
accountsArray.push(accountTypeSelected);
accountsArray.push(accountCurrencySelected);
// Items added to the array, logged.
console.log('user added: ' + accountsArray);
}
function accountsListHtml() {
var results = [];
// Loop through the array
for (var i = 0; i < accountsArray.length; i++) {
results += accountsArray[i] + " ";
}
document.getElementById('accountsList').innerHTML = results;
console.log(results);
}
假设输入没有格式错误或异常。我确保Javascript识别出results
是一个空数组,而不是字符串或其他什么:var results = []
- 循环遍历以数组为值的Javascript对象
- 如何遍历包含对象的数组-javascript
- JS.循环遍历多维数组,以计数元素在每列中的出现次数
- 根据PHP中数组的长度在Google Maps API中循环遍历标记
- 无法在javascript中循环遍历对象数组
- 如何使用jquery遍历具有动态添加元素的数组
- 我想遍历一个对象数组,我不想要任何重复项
- 如何遍历 JSON 对象以适合 JavaScript 数组
- 如何遍历 d3 中的值内部数组并添加相应的子元素
- Javascript 尝试遍历对象数组以显示其属性
- 使用jQuery循环遍历颜色数组
- javascript循环遍历列表项,并在数组中返回结果
- 循环遍历以数组作为值的对象的对象
- 遍历jQuery JSON对象数组
- 用javascript遍历映射中的数组
- 遍历嵌套的Javascript数组以创建路径
- 根据属性值创建多个对象数组,然后遍历每个数组
- 使用内部数组遍历数组并创建新对象 - AngularJS
- Jquery中的关联数组遍历每个元素
- Javascript - 使用数组遍历字段