javascript 数组处理:生成动态长度范围数组
在 javascript 中,数组是一个动态数据结构,其长度可以随时变更。本问答将介绍如何使用 javascript 创建一个数组,其最小长度为 4,最大长度为 8。
题目:
已知数组 arr 的最小长度为 4,最大长度为 8,现有一个自定义输入的数字 num,需要根据 num 的值动态生成一个数组。请提供 javascript 代码实现。
立即学习“Java免费学习笔记(深入)”;
解决方案:
横向计算:
function createlistdata(list, num = 600) { // 计算数组总长度 let count = list.reduce((n, i) => n + i.test, 0); // 计算单元格宽度 let step = math.floor(num / count); // 创建数据并计算单元格值 let data = list.map((item, index) => { return array.from({ length: item.test }).map((citem) => { return { min: 0, max: 0, }; }); }); // 计算最大单元格值 let max = math.max(...list.map((i) => i.test)); // 遍历并填充各个单元格的值 let value = 0, idx = 1; for (let index = 0; index < max; index++) { data.foreach((item) => { if (item[index]) { item[index].index = idx++; item[index].min = value + 1; value += step; item[index].max = num < value + step ? num : value; } }); } return data; }
登录后复制
竖向计算:
function createListData(list, num = 600) { // 计算数组总长度 let count = list.reduce((n, i) => n + i.test, 0); // 计算单元格宽度 let step = Math.floor(num / count); // 计算单元格值 let value = 0, idx = 1; let data = list.map((item, index) => { return Array.from({ length: item.test }).map((citem) => { let start = value; value += step; return { index: idx++, min: start + 1, max: num < value + step ? num : value, }; }); }); return data; }
登录后复制
以上就是JavaScript数组长度如何动态控制在4到8之间?的详细内容,更多请关注抖狐科技其它相关文章!
-
我是显眼包庄园主如何通关 抖音我是显眼包庄园主图文攻略
我是显眼包庄园主如何通关?《我是显眼包》是一款充满趣味与挑战的休闲游戏,玩家在游戏中将扮演一名渴望在人群中脱颖而出的角色。通过完成各种任务和挑战,玩家可以解锁更多独特的装扮,让自己成为最闪亮的“显眼包...
-
如何通过异常处理提高PHP程序的健壮性
如何通过异常处理提高PHP程序的健壮性 引言 异常处理是处理意外错误和异常情况的机制。通过异常处理,程序员可以捕获和处理错误,并按照预定的方式继续执行,从而提高程序的健壮性和可用性。 异常类 立即学习...
-
小红书被禁言限流了怎么恢复
小红书禁言限流的解除方法:1. 检查违规内容并删除;2. 申诉举报;3. 优化内容质量;4. 联系小红书官方客服。解除小红书禁言限流的方法 原因查找发布违规内容(如政治敏感话题、色情内容) 被用户举报...
-
大容量u盘不能被识别怎么办
大容量 u 盘识别问题大多由以下原因引起:兼容性、文件系统不兼容、驱动程序问题、物理损坏和病毒感染。解决方法:检查兼容性、检查文件系统、更新驱动程序、排除物理损坏、扫描病毒。大容量 U 盘无法识别的解...
-
魔兽世界wlk灭焰手套图纸购买方法
了解魔兽世界wlk瑟银管图纸的获取途径对于魔兽世界wlk玩家来说,获取瑟银管图纸至关重要。php小编苹果将在这里为您详细介绍其获取途径。本文将涵盖在游戏中购买图纸的具体步骤以及相关npc的位置信息。无...