JS 长度为500的字母组合数组

文章介绍了两种生成长度为500的字母组合数组的方法。第一种利用Math.floor和fromCharCode结合遍历来创建,第二种是通过双层遍历字符串ABCDEFGHIJKLMNOPQRSTUVWXYZ来实现。这两种方法都能生成包含AA到ZZ的组合,并截取前500个结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实现长度为500的字母组合数组,如以下代码所示:

/**
     * fromCharCode() 可接受一个指定的 Unicode 值,然后返回一个字符串,
     * 该方法是 String 的静态方法,字符串中的每个字符都由单独的 Unicode 数字编码指定。
    */
    // 此方法来自一位群友
    const combin1 = () => {
      const arr = []
      for (let i = 0; i < 500; i++) {
        /**
         * Math.floor向下取整,在i不能被26整除之前,Math.floor(i / 26) 都是同一个值,
         * String.fromCharCode(65) 是字母A,每遍历26次 Math.floor(i / 26) 会更新一个值
         * 所以每遍历26次 String.fromCharCode(65 + Math.floor(i / 26)) 就会更新字母
        */
        let first = String.fromCharCode(65 + Math.floor(i / 26));
        // i % 26 每一次取模运算都会得到为 i 的值,所以每遍历26次字母表 String.fromCharCode(65 + i % 26) 循环一次
        let second = String.fromCharCode(65 + i % 26)
        // 每遍历一次都会有 AA、AB...BB、BC...被push进数组
        arr.push(first + second)
      }
      return arr
    }
    /**
     * 双层遍历的方式就比较好理解了
    */
    const combin2 = () => {
      const arr = []
      const list = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.split('');
      list.forEach(i => list.forEach(j => arr.push(i + j)))
      return arr.splice(0, 500)
    }

结果如图所示:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值