使用JavaScript生成有序的HTML列表

时间:2015-10-04 21:16:44

标签: javascript arrays

所以我试图将我的JS数组显示为有序列表,就像使用html元素一样。假设有一个字符串数组,例如:pets(['cat', 'dog', 'mouse']),我想返回:

1:猫
2:狗
3:鼠标

然而,有一种特定的方式我想完成这项工作。看看下面:

function logArrayElements(element, index, array) {
  return index + ':' + element;
}

var pets = function(array){
  if (array.length <= 0) {
    return [];
  } else {
    return array.forEach(logArrayElements);
  }
}

当我运行上面的代码时,我得到了#undefined&#39;。那是为什么?

这不是家庭作业,只是自学。还要检查小提琴:http://jsfiddle.net/emporio/ohfrhfs5/14/

2 个答案:

答案 0 :(得分:0)

使用map而不是forEach

  

map()方法创建一个新数组,其结果是在此数组中的每个元素上调用提供的函数。

return array.map(logArrayElements);

答案 1 :(得分:0)

您只需使用内置的.sort()功能即可。所以你会有:

function pets(arr) {
  arr.sort();
  // rest of code
}