当前位置:首页 > JavaScript

fizzbuzz js实现

2026-03-14 07:48:19JavaScript

FizzBuzz 的 JavaScript 实现

FizzBuzz 是一个经典的编程面试题,要求根据特定规则输出数字或字符串。以下是几种常见的实现方法:

基础实现

使用简单的条件判断和循环实现 FizzBuzz:

for (let i = 1; i <= 100; i++) {
  if (i % 15 === 0) {
    console.log("FizzBuzz");
  } else if (i % 3 === 0) {
    console.log("Fizz");
  } else if (i % 5 === 0) {
    console.log("Buzz");
  } else {
    console.log(i);
  }
}

字符串拼接优化

通过字符串拼接减少重复条件判断:

for (let i = 1; i <= 100; i++) {
  let output = "";
  if (i % 3 === 0) output += "Fizz";
  if (i % 5 === 0) output += "Buzz";
  console.log(output || i);
}

函数式实现

使用数组的 mapforEach 方法实现 FizzBuzz:

Array.from({ length: 100 }, (_, i) => i + 1).forEach(num => {
  const output = (num % 3 ? "" : "Fizz") + (num % 5 ? "" : "Buzz");
  console.log(output || num);
});

扩展性实现

支持自定义规则和范围,提高代码复用性:

fizzbuzz js实现

function fizzBuzz(start, end, rules) {
  for (let i = start; i <= end; i++) {
    let output = "";
    for (const [divisor, word] of rules) {
      if (i % divisor === 0) output += word;
    }
    console.log(output || i);
  }
}

// 使用示例
fizzBuzz(1, 100, [[3, "Fizz"], [5, "Buzz"], [7, "Bazz"]]);

这些实现方法各有特点,基础实现适合简单场景,函数式和扩展性实现更适合复杂需求。根据实际需求选择合适的实现方式即可。

标签: fizzbuzzjs
分享给朋友:

相关文章

js实现跳转

js实现跳转

使用 window.location 跳转 通过修改 window.location.href 实现页面跳转,这是最常用的方法。 window.location.href = 'https://…

js实现日历

js实现日历

实现日历的基本思路 使用JavaScript实现日历的核心是动态生成日期表格,并处理月份切换逻辑。需要计算当前月的天数、起始星期几,并动态渲染到页面上。 获取当前日期信息 通过Date对象获取当前年…

js防抖和节流实现

js防抖和节流实现

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

js实现拷贝

js实现拷贝

实现文本拷贝 使用 document.execCommand 方法(已废弃但兼容性较好): function copyText(text) { const textarea = document…

利用js实现

利用js实现

使用 JavaScript 实现 在 JavaScript 中,可以通过多种方式实现功能,具体取决于需求。以下是几种常见的方法: 方法一:使用原生 JavaScript // 示例代码…

js实现投球

js实现投球

实现投球动画的基本思路 使用JavaScript和CSS动画结合的方式模拟投球效果。核心是通过改变元素的位置、旋转和缩放属性,配合定时器或CSS过渡实现平滑动画。 创建基础HTML结构 <di…