当前位置:首页 > 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

映射数列中的元素

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

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

js实现数列

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

相关文章

js 实现vue模板

js 实现vue模板

实现 Vue 模板的 JavaScript 方法 通过原生 JavaScript 可以实现类似 Vue 的模板渲染功能,主要包括数据绑定、指令处理和模板解析。以下是核心实现思路: 数据绑定与响应式…

js实现验证码

js实现验证码

使用Canvas生成图形验证码 在HTML中创建一个Canvas元素用于绘制验证码。通过JavaScript随机生成数字或字母组合,并添加干扰线、噪点等干扰元素增强安全性。 <canvas i…

js 实现倒计时

js 实现倒计时

实现倒计时的基本方法 使用 JavaScript 实现倒计时可以通过 setInterval 或 setTimeout 结合日期计算来完成。以下是两种常见实现方式。 使用 setInterval 实…

js实现预览

js实现预览

文件上传预览实现 使用JavaScript实现文件上传预览功能,可以通过FileReader对象读取文件内容并显示预览。以下代码支持图片、文本和PDF文件的预览: // HTML部分需要包含inp…

js节流实现

js节流实现

节流的概念 节流(Throttle)是一种限制函数执行频率的技术,确保函数在一定时间间隔内只执行一次。常用于滚动事件、窗口调整等高频触发的场景。 基础实现方法 使用时间戳判断是否执行函数: f…

js实现上传文件

js实现上传文件

文件上传的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API可以实现文件上传功能。 <input type="file"…