本文介绍了一种在JavaScript中遍历并打印数组对象的方法。通过递归处理嵌套的数组和对象,该方案能清晰展示数据结构。文中提供了完整的示例代码,包括遍历逻辑与格式化输出函数,供开发者参考使用。
JavaScript数组遍历与打印实现
本文通过具体实例,详细解析了JavaScript中遍历数组以及打印数组内容的实现方式。
针对JavaScript中缺乏现成且高效的数组打印方法这一痛点,本文整理并分享了一个简单实用的备用方案。
// 遍历数组
var dd = {
'a' : '111111',
'b' : '222222',
'c' : '333333'
}
dd['d'] = ['444444','55555555'];
// 遍历数组
function scan_array(arr) {
for(var key in arr) { // 这个是关键
if(typeof(arr[key]) == 'array' || typeof(arr[key]) == 'object') {// 递归调用
scan_array(arr[key]);
} else {
document.write(key + ' = ' + arr[key] + '<br>');
}
}
}
function successionPrint(str,num) {
num = parseInt(num);
var return_str = '';
for (var i = 1; i<=num; i++) {
return_str +=str;
}
return return_str;
}
function __debug(param, flag) {
if (!param || typeof(param) == 'number' || typeof(param) == 'string') {
return param;
}
var t = typeof(param) + '(\n';
flag = flag ? parseInt(flag) + 1 : 1;
for(var key in param) {
if(typeof(param[key]) == 'array' || typeof(param[key]) == 'object') {
var t_tmp = key + ' = ' + __debug(param[key],flag);
t += successionPrint('\t', flag) + t_tmp + '\n';
} else {
var t_tmp = key + ' = ' + param[key];
t += successionPrint('\t', flag) + t_tmp + '\n';
}
}
t = t + successionPrint('\t', flag-1) + ')';
return t;
}
function _debug(param) {
alert(__debug(param));
}
如需深入了解JavaScript数组的其他技巧,建议参阅本站专题《JavaScript数组操作技巧总结》。
期望上述内容能为广大JavaScript程序员的开发工作提供有益的帮助。