JavaScript 中如何返回 null?

有人帮我解决 JavaScript 中的“星期几练习”吗?我搜索了MDN并尝试了很多次,但我仍然不明白null是什么,以及如何使用null。

如果参数(num)小于 1 或大于 7,则该函数应返回 null。

https://img4.mukewang.com/650ba46300016d9f06510453.jpg

const days = ['Monday','Tuesyday','Wednesday','Thursday','Friday','Saturday','Sunday'];


let returnDay = (num) => {

    if (1 <= num <= 7) {

        return (days[num -1]);

    } else {

        return null;

    }

    

};


returnDay(1); // Monday

returnDay(7); // Sunday

returnDay(4); // Thursday

returnDay(0); // null


郎朗坤
浏览 126回答 2
2回答

人到中年有点甜

1 <= num <= 7不做你认为它做的事。在 JavaScript 中,二元运算符是从左到右计算的。1 <= num <= 7确实 也是如此,(1 <= num) <= 7它是true <= 7或者false <= 7(取决于num是什么)。无论哪种方式,它都会计算为true,但不要问我为什么,因为无论如何你都不应该将布尔值与数字进行比较。由于条件始终为true,else因此分支永远不会执行,因此您永远不会得到null。我想你想写的是:if (1 <= num && num <= 7) {&nbsp; &nbsp;...} else {&nbsp; &nbsp;...}此外,请记住数组索引以 开头0。在你的例子中,days[1]将是'Tuesday',而不是'Monday'。

慕田峪7331174

我希望这个答案对你有帮助:)const days = ['Monday', 'Tuesyday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'];const returnDay = (num) => {&nbsp; const day = num - 1;&nbsp; if (days[day]) { // since you passing 0 there is no such element in the array at index -1,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; //so if statement essentially evaluates to false and returning null right away;&nbsp; &nbsp; return days[day];&nbsp; }&nbsp; return null;};console.log(returnDay(1)); // Mondayconsole.log(returnDay(7)); // Sundayconsole.log(returnDay(4)); // Thursdayconsole.log(returnDay(0)); // null
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript