Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JavaScript生成有序的HTML列表_Javascript_Arrays - Fatal编程技术网

使用JavaScript生成有序的HTML列表

使用JavaScript生成有序的HTML列表,javascript,arrays,Javascript,Arrays,所以我尝试将我的JS数组显示为一个有序列表,就像您使用html元素一样。假设字符串数组已通过,例如:pets(['cat','dog','mouse']),我想返回: 1:cat 2:狗 3:鼠标 不过,我希望有一种具体的方式来完成这项工作。请看下面: function logArrayElements(element, index, array) { return index + ':' + element; } var pets = function(array){ if (arr

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

1:cat
2:狗
3:鼠标

不过,我希望有一种具体的方式来完成这项工作。请看下面:

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

var pets = function(array){
  if (array.length <= 0) {
    return [];
  } else {
    return array.forEach(logArrayElements);
  }
}
函数logArrayElements(元素、索引、数组){
返回索引+':'+元素;
}
变量=函数(数组){

如果(array.length而不是forEach
,则使用

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


您只需使用内置函数即可。因此您将拥有:

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

我不理解你的问题;我想你使用了一些你不理解的术语(“排序”、“有序列表”)…排序函数有什么问题?你知道你只是要求数组原封不动地返回吗?检查你的问题,输入和输出是一样的。以后再仔细考虑你的问题。排序函数不会像有序列表那样在前面添加数字。你在试着创建一个实际的
ordered list,或者仅仅是一个文本列表?我认为OP实际上并不想对数组进行“排序”,正如我们所理解的那样。请注意,在他/她的示例中,数组一开始就已经进行了排序。
function pets(arr) {
  arr.sort();
  // rest of code
}