javascript - 有没有办法将数组的内容显示为有序列表但在警告框内

标签 javascript arrays list sorting alert

我正在编写一个程序,该程序要求通过文本框输入,然后通过提示要求输入更多项目。我正在使用 .push 方法将输入添加到我拥有的空数组中。在程序结束时,它将在警告框中显示项目,但项目需要按字母顺序排列并显示为有序列表。我知道这可以使用 .map 方法对数组完成,但我看到的所有示例都将其显示到页面而不是在警报中。

这是我正在使用的代码。

let list = [];

function groceryList()
{
    text_one = document.getElementById('text1').value;
    text_two = document.getElementById('text2').value;
    text_three = document.getElementById('text3').value;
    list.push(text_one, text_two, text_three);

    add = prompt("Enter another item on your grocery list: (Enter 0 to finish)");

    while (add !== 0) {
        list.push(add);
        add = prompt("Enter another item on your grocery list: (Enter 0 to finish)");

        if (add == 0) {
            break;
        }
    }
    list.sort();
    alert(list);
}
<!DOCTYPE HTML>
<html>
<head>
    <meta charset="UTF-8">
    <title>Grocery List</title>
</head>
<body>
    <script type="text/javascript" src="my_list.js" charset="utf-8"></script>
    <p>Please use the form below to add 3 items to the grocery list.</p>
    <form onsubmit="groceryList()">
        <input type="text" id="text1">
        <input type="text" id="text2">
        <input type="text" id="text3"> <br> <br>
        <input type="submit" value="Add to the grocery list">
    </form>
</body>
</html>

最佳答案

试试这个:

...
list.sort();
let orderedList = list.reduce((list,item, index)=>{ return `${list}${index+1}. ${item}\n`},"");
alert(orderedList);
...

关于javascript - 有没有办法将数组的内容显示为有序列表但在警告框内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71961218/

相关文章:

javascript - 谷歌地图 v3 设置 map 中心

javascript - 如何使用 gulp 将已安装 Bower 包的链接注入(inject) html 文件

javascript - "X = (!X ? 8 : X)"在javascript中是什么意思?

arrays - 计算乘积不能被 k 整除的子数组的个数

arrays - F# 数组平面图

java - 如何在 logcat for android 中查看数组

在c中复制链表

c++ - C++比较 vector 和列表

javascript - 使用字符串点表示法更新对象值

python - 压缩大小不等的列表(值多于键)以形成统一的字典