转换为小写,大写,然后将字符串拆分为自己的行

时间:2018-03-21 03:13:45

标签: javascript split uppercase lowercase

我正在尝试更好地做这件事并一直在玩字符串。我要做的是将用户输入收集为字符串并对其进行操作,以便在显示文本时,无论他们编写什么内容都将首先以小写显示,然后全部大写,然后将所有文本划分为自己的文本线。

所以,如果我输入,输出将是这样的:这是一个例子

这是一个例子

这是一个例子

例如

我觉得这应该比它看起来容易得多,但我到目前为止尝试全部小写,但到目前为止无法使用(以及其他两个部分)。我认为如果我得到小写的正确,我只是重复大写并分裂它。

    <button onclick="myFunction()">Try it</button>

<p id="test"></p>

<script>
function myFunction() {
    var person = prompt("Please enter a phrase");
    if (person != null) {
        document.getElementById("test").innerHTML =
        test.toLowerCase;
        document.getElementById("test").innerHTML =
        test.toUpperCase;
        document.getElementById("test").innerHTML =
        test.split("\n");
    }
}
</script>

以上是我到目前为止所使用的内容,当我点击按钮进行测试时,我得到了不确定。有人可以帮我编辑吗?

2 个答案:

答案 0 :(得分:3)

  1. 使用()
  2. 调用函数
  3. 您的变量为person而不是test
  4. 您希望在space而非\n
  5. 上拆分
  6. 你想ADD来测试innerHTML,而不是每次都替换它
  7. 要在HTML中获取换行符,请使用<br>标记
  8. 我已经选择了一次分配innerHTML的代码,因为这比一次添加它更有效 - 当然,有这样一个简单的例子没有感知差异,但是我想我应该提到为什么我选择使用这种奇怪的方法

    function myFunction() {
        var person = prompt("Please enter a phrase");
        if (person != null) {
            document.getElementById("test").innerHTML = [
              person.toLowerCase(),
              person.toUpperCase(),
              person.split(" ").join('<br>')
            ].join("<br>");
        }
    }
    <button onclick="myFunction()">Try it</button>
    <p id="test"></p>

答案 1 :(得分:2)

您可能希望先将字符串拆分为单词,然后使用带有<br />标记的join()函数将它们渲染为多行单词。

function myFunction() {
    var person = prompt("Please enter a phrase");
        if (person != null) {
            document.getElementById("test").innerHTML +=
        person.toLowerCase() + "<br />";
        document.getElementById("test").innerHTML +=
        person.toUpperCase() + "<br />";
        document.getElementById("test").innerHTML +=
        person.split(' ').join('<br />');
    }
}