Eloquent Javascript中的练习4.4——startsWith()和.slice

Exercise 4.4 in Eloquent Javascript -- startsWith() and .slice

本文关键字:slice startsWith Javascript 练习 Eloquent      更新时间:2023-09-26

我正在Eloquent JavaScript中进行练习4.4。

这就是问题所在:

编写一个名为startsWith的函数,该函数接受两个参数字符串。当第一个参数以第二个参数中的字符,否则为false。

这就是我想出的解决方案:

JSFiddle:http://jsfiddle.net/ErhKS/3/

function startsWith(string1, pattern) {
    if (string1.slice(0,4) === pattern.slice(0,4) {
    return true;
    }
}
console.log(startsWith("something", "somethingmore"));

我不明白为什么我在console.log((.中出现错误

我确实理解这本书的解决方案,以及为什么它是一个好的解决方案:

function startsWith(string, pattern) {
  return string.slice(0, pattern.length) == pattern;
}

我只是想知道为什么我自己写得不好的函数在控制台中出错并返回:

Uncaught SyntaxError: Unexpected token { .

这是因为您还没有结束if语句中的所有括号。

function startsWith(string1, pattern) {
  if (string1.slice(0,4)) === pattern.slice(0,4) {
    return true;
  }
}

以下是一个有效的更新示例:http://jsfiddle.net/ErhKS/4/

function startsWith(string1, pattern) {
        if (string1.slice(0,4) === pattern.slice(0,4) ){
            return true;
            }
    }
        console.log(startsWith("something", "somethingmore"));

你错过了if右括号。http://jsfiddle.net/ErhKS/5/

if.中缺少结束符"(">

尽管你有一个错误,但我认为你可以考虑字符串.indexOf;(