功能1和功能2都相同但语法不同。问题是,当我在isItAPalindrome函数中调用函数2(箭头函数语法)时,它给出了一个“未定义”错误。但是当我在isItAPalindrome函数中声明函数2时,它不会给我任何错误。
功能1:
function reverseStr(str){
return str.toLowerCase().split('').reverse().join('');
}
功能2:
const reverseStr = (str) => str.toLowerCase().split('').reverse().join('');
当我调用函数1时,它按照预期的方式工作。
function isItAPalindrome(str) {
//When I call the arrow function here it works.
//const reverseStr = (str) => str.toLowerCase().split('').reverse().join('');
if (str.toLowerCase() == reverseStr(str)) {
return "It's a palindrome!";
} else {
return "It's not a palindrome!";
}
}
console.log(isItAPalindrome("sum mus"));
为什么会出现箭头函数?