需要澄清代码正确的原因。

3
const isString = (a, b, c) => {
  if (((typeof a) == "string") && ((typeof b) == "string") && ((typeof c) == "string")) {
    return "strings";
  }
  return "not strings";
}

为什么需要在参数后面添加=>才能使其工作?我通过试错的方式得到了这个测试问题的正确答案,但我不明白为什么没有=>就无法工作。
以下是说明:
创建一个名为“isString”的函数,它接受3个参数(x1、x2、x3)
检查每个参数是否为字符串,使用typeof。
如果每个参数都是字符串,则返回“strings”。
如果每个参数都不是字符串,则返回“not strings”。

如果有任何答案对您有帮助,请记得将其中一个标记为已接受的答案。(请参阅当有人回答我的问题时我该怎么做? - phentnil
4个回答

2

这看起来像是Javascript。在Javascript中有几种声明函数的方式。其中一种,就像你已经做的那样。

const myFunc = (params) => {
    // code
}

这是将myFunc视为Javascript中需要分配值的任何其他名称。另一种更传统的方法是:

function myFunc(params) {
    // code
}

请注意,因为您在isString之后使用了=,Javascript引擎期望您像第一个示例中定义的那样进行定义。

2
太棒了!我不知道有两种回答的方法。还有很多要学习的。感谢您详细的回答,这对我帮助很大。 - Hello World
很高兴我能帮到你! - kagof

2

=> 是箭头函数的语法。


1
谢谢,这很有道理。谢谢你的帮助。 - Hello World

2

1
回答了我的问题。谢谢,我一直在努力理解。感谢您的帮助。 - Hello World

2
假设这是=>表示它是箭头函数的一部分。以下两个代码在理解上是等价的。
// function declaration
function isString (a, b, c) {
  if (((typeof a) == "string") && ((typeof b) == "string") && ((typeof c) == "string")) {
    return "strings";
  }
  return "not strings";
}

// arrow function declaration; can also use `var` instead of `const`
const isString = (a, b, c) => {
  if (((typeof a) == "string") && ((typeof b) == "string") && ((typeof c) == "string")) {
    return "strings";
  }
  return "not strings";
};

1
这让我彻底明白了,感谢您的帮助。 - Hello World

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接