当前位置:首页 > JavaScript

js实现数列

2026-01-31 20:22:18JavaScript

生成数列的方法

使用循环生成数列

通过循环可以生成简单的数列,例如生成1到10的数列:

let sequence = [];
for (let i = 1; i <= 10; i++) {
  sequence.push(i);
}
console.log(sequence); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

使用Array.from生成数列

Array.from方法可以快速生成数列,例如生成0到9的数列:

let sequence = Array.from({length: 10}, (_, i) => i);
console.log(sequence); // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

生成斐波那契数列

斐波那契数列可以通过递归或迭代实现,以下是迭代实现:

function fibonacci(n) {
  let fib = [0, 1];
  for (let i = 2; i < n; i++) {
    fib[i] = fib[i - 1] + fib[i - 2];
  }
  return fib;
}
console.log(fibonacci(10)); // [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

生成等差数列

等差数列可以通过公式生成,例如生成首项为1,公差为2的数列:

function arithmeticSequence(start, diff, length) {
  return Array.from({length}, (_, i) => start + i * diff);
}
console.log(arithmeticSequence(1, 2, 5)); // [1, 3, 5, 7, 9]

生成等比数列

等比数列可以通过公式生成,例如生成首项为1,公比为2的数列:

function geometricSequence(start, ratio, length) {
  return Array.from({length}, (_, i) => start * Math.pow(ratio, i));
}
console.log(geometricSequence(1, 2, 5)); // [1, 2, 4, 8, 16]

使用生成器函数生成无限数列

生成器函数可以用于生成无限数列,例如生成自然数数列:

function* naturalNumbers() {
  let n = 1;
  while (true) {
    yield n++;
  }
}
const numbers = naturalNumbers();
console.log(numbers.next().value); // 1
console.log(numbers.next().value); // 2

数列操作示例

过滤数列中的偶数

let sequence = [1, 2, 3, 4, 5, 6];
let evenNumbers = sequence.filter(num => num % 2 === 0);
console.log(evenNumbers); // [2, 4, 6]

计算数列的和

let sequence = [1, 2, 3, 4, 5];
let sum = sequence.reduce((a, b) => a + b, 0);
console.log(sum); // 15

映射数列中的元素

js实现数列

let sequence = [1, 2, 3, 4, 5];
let squared = sequence.map(num => num * num);
console.log(squared); // [1, 4, 9, 16, 25]

以上方法涵盖了常见的数列生成和操作需求,可以根据具体场景选择合适的方法。

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

相关文章

vue.js实现轮播

vue.js实现轮播

Vue.js 实现轮播功能 使用第三方库(推荐) Vue.js 生态中有许多成熟的轮播组件库,例如 vue-awesome-swiper 或 swiper,它们功能丰富且易于集成。 安装 swipe…

js实现选题

js实现选题

实现选题功能的JavaScript方法 基础实现方案 使用数组存储选项,通过随机索引选取: const options = ['选项A', '选项B', '选项C', '选项D']; const r…

js树实现

js树实现

树的基本概念 树是一种非线性的数据结构,由节点和边组成。每个节点包含一个值和指向子节点的引用。树的顶部节点称为根节点,没有子节点的节点称为叶节点。 树的实现方式 在JavaScript中,树可以通过…

js实现自举

js实现自举

实现 JavaScript 自举的方法 JavaScript 自举(Bootstrap)通常指通过 JavaScript 动态加载自身或依赖的脚本,实现运行时环境的初始化或扩展。以下是几种常见实现方式…

js实现投球

js实现投球

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

js实现下拉菜单

js实现下拉菜单

使用HTML和CSS创建基础结构 HTML部分需要包含一个触发下拉的按钮和隐藏的下拉菜单内容: <div class="dropdown"> <button class="dr…