当前位置:首页 > JavaScript

喊7的次数重排js实现

2026-03-02 01:27:35JavaScript

喊7的次数重排js实现

要实现喊7的次数重排功能,可以理解为统计数字中包含7或能被7整除的次数,并按顺序输出这些数字。以下是几种实现方法:

喊7的次数重排js实现

方法一:基础遍历法

function countSevens(n) {
  let result = [];
  for (let i = 1; i <= n; i++) {
    if (i % 7 === 0 || i.toString().includes('7')) {
      result.push(i);
    }
  }
  return result;
}

方法二:优化字符串检查

function countSevens(n) {
  return Array.from({length: n}, (_, i) => i + 1)
    .filter(num => num % 7 === 0 || /7/.test(num));
}

方法三:递归实现

function countSevens(n, current = 1, result = []) {
  if (current > n) return result;
  if (current % 7 === 0 || current.toString().includes('7')) {
    result.push(current);
  }
  return countSevens(n, current + 1, result);
}

方法四:生成器实现

function* sevenGenerator(n) {
  for (let i = 1; i <= n; i++) {
    if (i % 7 === 0 || i.toString().includes('7')) {
      yield i;
    }
  }
}

function countSevens(n) {
  return [...sevenGenerator(n)];
}

这些实现方法都可以输出包含7或能被7整除的数字列表。选择哪种方法取决于具体需求和性能考虑。基础遍历法简单直观,优化字符串检查法更简洁,递归实现适合函数式编程风格,生成器实现则适合处理大数据集。

标签: 次数js
分享给朋友:

相关文章

js 进度条的实现

js 进度条的实现

使用 HTML 和 CSS 创建基础进度条 HTML 结构可以简单使用一个 div 元素作为容器,内部嵌套另一个 div 表示进度: <div class="progress-containe…

js实现祖玛

js实现祖玛

实现祖玛游戏的核心思路 祖玛游戏的核心玩法是发射彩色珠子,形成三个或以上相同颜色的珠子即可消除。以下是使用JavaScript实现的基本框架。 游戏初始化 创建画布并初始化游戏状态: const…

js实现防洪

js实现防洪

防抖(Debounce)实现 防抖的核心思想是在事件触发后延迟执行回调函数,若在延迟时间内再次触发事件,则重新计时。适用于输入框搜索、窗口调整等场景。 function debounce(f…

js实现图

js实现图

JavaScript 实现图的常用方法 在 JavaScript 中,图(Graph)可以通过多种方式实现,常见的包括邻接表(Adjacency List)和邻接矩阵(Adjacency Matrix…

js钟表实现

js钟表实现

实现JavaScript钟表的基本方法 创建一个简单的JavaScript钟表可以通过以下步骤完成,涵盖数字和模拟两种形式。 数字钟表实现 HTML结构只需一个显示时间的容器: <div i…

js实现滑动

js实现滑动

实现滑动效果的方法 在JavaScript中实现滑动效果可以通过多种方式完成,以下是几种常见的实现方法: 使用CSS过渡和JavaScript触发 通过CSS定义过渡效果,JavaScript控制触…