Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.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_Javascript_Html_Javascript Events - Fatal编程技术网

用于按字母顺序提示输入和输出排序的Javascript

用于按字母顺序提示输入和输出排序的Javascript,javascript,html,javascript-events,Javascript,Html,Javascript Events,我试图创建一个提示框,让用户输入数据,但是输出应该按字母顺序显示单词 输入:一行文本,使用提示符。输出:文本的单词 按字母顺序输入文本 我尝试过以下方法,但似乎对我不起作用: var textArr = prompt("Enter a line of text: "); var textArr=string.split(); textArr.sort(); alert(textArr.toString(', ')); 必须提供要在以下位置执行拆分的字符: var input = prompt

我试图创建一个提示框,让用户输入数据,但是输出应该按字母顺序显示单词

输入:一行文本,使用提示符。
输出:文本的单词 按字母顺序输入文本

我尝试过以下方法,但似乎对我不起作用:

var textArr = prompt("Enter a line of text: ");
var textArr=string.split();
textArr.sort();

alert(textArr.toString(', '));

必须提供要在以下位置执行拆分的字符:

var input = prompt("Enter a line of text: ");
var textArr = input.split(' ');
console.log(textArr.sort());

必须提供要在以下位置执行拆分的字符:

var input = prompt("Enter a line of text: ");
var textArr = input.split(' ');
console.log(textArr.sort());

您没有指定什么是word以及它们是如何分开的,所以我假设这是一项练习任务:

var textArr = prompt("Enter a line of text: ");
alert(textArr.match(/\w+/gi).sort().join());
match(/\w+/gi)
匹配正则表达式
/\w+/
,它表示后跟任何拉丁字母字符或数字,后跟拉丁字母字符或数字


显然,它不适用于(比如)用西里尔语或希腊文书写的单词,因为这会使问题复杂化。

您没有指定单词是什么以及它们是如何分开的,所以我假设这是一项练习任务:

var textArr = prompt("Enter a line of text: ");
alert(textArr.match(/\w+/gi).sort().join());
match(/\w+/gi)
匹配正则表达式
/\w+/
,它表示后跟任何拉丁字母字符或数字,后跟拉丁字母字符或数字


显然,它不适用于用西里尔语或希腊文书写的单词,因为这会使问题复杂化。

这里有两个问题:

  • 字符串从未定义
  • 拆分定界符不应为空(“)
  • Array.toString()未正确转换
  • 试试这个:

    <script language="JavaScript" type="text/javascript">
        var string = prompt("Enter a line of text: ");
        var textArr=string.split(" ");
        textArr.sort();
        alert(textArr.join(', '));
    </script>
    
    var textArr = prompt("Enter a line of text: ");
    var textArr = textArr.split(' '); //Separates words by spaces
    textArr.sort();
    
    
    alert(textArr.join(', '));
    
    
    var string=prompt(“输入一行文本:”);
    var textArr=string.split(“”);
    textArr.sort();
    警报(textArr.join(',');
    
    这里有几个问题:

  • 字符串从未定义
  • 拆分定界符不应为空(“)
  • Array.toString()未正确转换
  • 试试这个:

    <script language="JavaScript" type="text/javascript">
        var string = prompt("Enter a line of text: ");
        var textArr=string.split(" ");
        textArr.sort();
        alert(textArr.join(', '));
    </script>
    
    var textArr = prompt("Enter a line of text: ");
    var textArr = textArr.split(' '); //Separates words by spaces
    textArr.sort();
    
    
    alert(textArr.join(', '));
    
    
    var string=prompt(“输入一行文本:”);
    var textArr=string.split(“”);
    textArr.sort();
    警报(textArr.join(',');
    
    我建议:

    // 1. gets the text from the user,
    // 2. splits that string, on white-space(s), into an array of words
    // 3. sorts that array lexicographically (the default),
    // 4. joins the array back together with the ', ' string
    var textArr = prompt("Enter a line of text: ").split(/\s+/).sort().join(', ');
    
    alert(textArr);
    

    参考资料:

      • 我建议:

        // 1. gets the text from the user,
        // 2. splits that string, on white-space(s), into an array of words
        // 3. sorts that array lexicographically (the default),
        // 4. joins the array back together with the ', ' string
        var textArr = prompt("Enter a line of text: ").split(/\s+/).sort().join(', ');
        
        alert(textArr);
        

        参考资料:


        您必须为split函数指定一个分隔符,否则,它将返回一个仅包含一项(整个字符串)的数组

        此外,如果要将数组转换为字符串,则应使用join(glue)函数,其中glue是数组项的“连接器”。如果胶水是ommited,元素将用逗号分隔

        试试这个:

        <script language="JavaScript" type="text/javascript">
            var string = prompt("Enter a line of text: ");
            var textArr=string.split(" ");
            textArr.sort();
            alert(textArr.join(', '));
        </script>
        
        var textArr = prompt("Enter a line of text: ");
        var textArr = textArr.split(' '); //Separates words by spaces
        textArr.sort();
        
        
        alert(textArr.join(', '));
        

        必须为split函数指定分隔符,否则,它将返回仅包含一项(整个字符串)的数组

        此外,如果要将数组转换为字符串,则应使用join(glue)函数,其中glue是数组项的“连接器”。如果胶水是ommited,元素将用逗号分隔

        试试这个:

        <script language="JavaScript" type="text/javascript">
            var string = prompt("Enter a line of text: ");
            var textArr=string.split(" ");
            textArr.sort();
            alert(textArr.join(', '));
        </script>
        
        var textArr = prompt("Enter a line of text: ");
        var textArr = textArr.split(' '); //Separates words by spaces
        textArr.sort();
        
        
        alert(textArr.join(', '));
        

        看来周一之前要做的作业太多了!:)“似乎不起作用”确切地说是什么意思?(顺便说一句,您的代码中有一个未声明的变量
        string
        )。输出是相同的,这并不重要,似乎周一之前需要完成很多家庭作业!)“似乎不起作用”确切地说是什么意思?(顺便说一句,您的代码中有一个未声明的变量
        string
        )。输出是相同的,它不是Sort,单词将由用户输入,它可以是任意的chracterYup,但单词的边界通常由空格定义,因此按空格分割。单词将由用户输入,它可以是任意的chracterYup,但是单词的边界通常是由空格来定义的,因此用空格来划分。这就是我在输出中得到的东西,这就是我在输出中得到的东西