具有数组功能的回文检查器
Palindrom checker with array function
我的目标是测试回文(单词向前和向后相同)以及仅包含回文的日志和数组,到目前为止,这是我能得到的最多的。
const getAllPalindromes = (words) => {
return words.filter((word) => {
word.split("").reverse().join("") === word;
});
};
console.log(getAllPalindromes(["hello", "noon"]));
根据我的理解,这应该 return 一个包含布尔值为真的项目的数组,任何指针都会对新手有所帮助,非常感谢!
您没有return过滤条件。您进行了比较,但随后没有 return 它,因此过滤器具有未定义的作为比较器的 return,因此它不会过滤任何东西。否则,你其余的逻辑是正确的!
const getAllPalindromes = (words) => words.filter((word) => word.split("").reverse().join("") === word);
console.log(getAllPalindromes(["hello", "noon"]));
由于您使用的是箭头函数,我们将在其中使用隐式 return 来使事情变得更小,尤其是因为每个函数实际上只是一个语句。这是用于直接比较的较长格式的相同代码
const getAllPalindromes = function (words) {
return words.filter(function (word) {
return word.split("").reverse().join("") === word;
});
};
console.log(getAllPalindromes(["hello", "noon"]));
早就有人回答了,这里仅供参考
如果您使用可以帮助您及早发现问题的编辑器或代码检查器,也可能会有所帮助。遗漏 return 语句与错漏一个语句一样容易。
Off by One errors are as easy to make as a missed return statement undefined
编码愉快!
我的目标是测试回文(单词向前和向后相同)以及仅包含回文的日志和数组,到目前为止,这是我能得到的最多的。
const getAllPalindromes = (words) => {
return words.filter((word) => {
word.split("").reverse().join("") === word;
});
};
console.log(getAllPalindromes(["hello", "noon"]));
根据我的理解,这应该 return 一个包含布尔值为真的项目的数组,任何指针都会对新手有所帮助,非常感谢!
您没有return过滤条件。您进行了比较,但随后没有 return 它,因此过滤器具有未定义的作为比较器的 return,因此它不会过滤任何东西。否则,你其余的逻辑是正确的!
const getAllPalindromes = (words) => words.filter((word) => word.split("").reverse().join("") === word);
console.log(getAllPalindromes(["hello", "noon"]));
由于您使用的是箭头函数,我们将在其中使用隐式 return 来使事情变得更小,尤其是因为每个函数实际上只是一个语句。这是用于直接比较的较长格式的相同代码
const getAllPalindromes = function (words) {
return words.filter(function (word) {
return word.split("").reverse().join("") === word;
});
};
console.log(getAllPalindromes(["hello", "noon"]));
如果您使用可以帮助您及早发现问题的编辑器或代码检查器,也可能会有所帮助。遗漏 return 语句与错漏一个语句一样容易。
Off by One errors are as easy to make as a missed return statement undefined
编码愉快!