每日一题——LeetCode1154.一年中的第几天

方法一 列举法:

用一个数组把每个月份的天数都列举出来

判断闰年,是闰年2月份有29天

循环对当前月份之前的月份天数求和

加上当天月份的天数

javascript 复制代码
var dayOfYear = function(date) {
    let year = +date.slice(0, 4);
    let month = +date.slice(5, 7);
    let day = +date.slice(8);

    let amount = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
    if (year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0)) {
        ++amount[1];
    }

    let ans = 0;
    for (let i = 0; i < month - 1; ++i) {
        ans += amount[i];
    }
    return ans + day;
};

消耗时间和内存情况:

相关推荐
左夕1 小时前
分不清apply,bind,call?看这篇文章就够了
前端·javascript
滕青山2 小时前
文本行过滤/筛选 在线工具核心JS实现
前端·javascript·vue.js
时光不负努力2 小时前
编程常用模式集合
前端·javascript·typescript
大雨还洅下2 小时前
前端JS: 跨域解决
javascript
OpenTiny社区2 小时前
OpenTiny NEXT-SDK 重磅发布:四步把你的前端应用变成智能应用
前端·javascript·ai编程
梦想CAD控件2 小时前
在线CAD开发包结构与功能说明
前端·javascript·vue.js
时光不负努力2 小时前
TS 常用工具类型
前端·javascript·typescript
Hilaku3 小时前
我会如何考核一个在简历里大谈 AI 提效的高级前端?
前端·javascript·面试
进击的尘埃3 小时前
Vue3 中 emit 能 await 吗?事件机制里的异步陷阱
javascript
青青家的小灰灰3 小时前
React 反模式(Anti-Patterns)排查手册:从性能杀手到逻辑陷阱
前端·javascript·react.js