Javascript 函数在控制台中不起作用

Javascript functions not working in console

所以我有这个代码:

<script>
    function add7(n) {
        let x = n + 7;
        console.log(x);
    }
    function lastLetter(theString) {
        let x = lastIndexOf(theString);
        console.log(x);
    })
</script>
<script>
    function multiply(a, b) {
        let ans = a * b;
        console.log(ans);
    }
</script>
<script>
    function capitalize(word) {
        if (word = String) {
            toLowerCase(word);
            charAt(0).toUpperCase(word);
            console.log(word);
        } else {
            console.log("not a string");
        }
    }
</script>

我在控制台中写入 functionName(chosenVariable) 并期望看到一个明确的答案,但是 add7 和 lastLetter 只是 returns ReferenceError (function) 未定义。其他 2 个得到 undefined 作为答案。我知道我瞎了,但我是不是也有点傻?我查看了代码并尝试了不同的更改,但无法使其正常工作。

您的代码有一些错误

  • 第一个脚本块末尾的额外 )
  • lastIndexOf 未在脚本的任何位置定义
  • word = String 只会将 String class 的值赋给单词变量(并且总是 return true)
  • 字符串是不可变的,因此您不能编辑现有字符串,但是可以基于另一个字符串创建新字符串,因此单独使用 word.toLowerCase() 不会做任何事情,您需要重新分配值

add7(2);
lastLetter("123123");
multiply(2, 3);
capitalize("asd");

function add7(n) {
  let x = n + 7;
  console.log(x);
}

function lastLetter(theString) {
  let x = theString[theString.length - 1];
  console.log(x);
}

function multiply(a, b) {
  let ans = a * b;
  console.log(ans);
}

function capitalize(word) {
  if (typeof word === "string") {
    word = word.toLowerCase();
    word = word[0].toUpperCase() + word.substring(1);
    console.log(word);
  } else {
    console.log("not a string");
  }
}