等效于 Javascript 中的 python 范围 [重复]
Posted
技术标签:
【中文标题】等效于 Javascript 中的 python 范围 [重复]【英文标题】:Equivalent of python's range in Javascript [duplicate] 【发布时间】:2019-12-20 03:39:38 【问题描述】:我想知道 python 的 range(start,stop,step=1) 的等效代码是什么。如果有人知道,我非常感谢您的帮助。
【问题讨论】:
一个 for 循环。请展示您的研究。 【参考方案1】:javascript 没有范围方法。 请参阅 MDN 的 JavaScript 指南中的 Looping Code 部分 了解更多信息。
此外,在提出此类问题之前,请尝试进行一些研究或举例说明您希望实现的目标。一个代码是示例,或者一个简单的描述就足够了。
【讨论】:
【参考方案2】:range()
的懒评估版;以前是xrange()
;
function* range(start, end, step)
const numArgs = arguments.length;
if (numArgs < 1) start = 0;
if (numArgs < 2) end = start, start = 0;
if (numArgs < 3) step = end < start ? -1 : 1;
// ignore the sign of the step
//const n = Math.abs((end-start) / step);
const n = (end - start) / step;
if (!isFinite(n)) return;
for (let i = 0; i < n; ++i)
yield start + i * step;
console.log("optional arguments:", ...range(5));
console.log("and the other direction:", ...range(8, -8));
console.log("and with steps:", ...range(8, -8, -3));
for(let nr of range(5, -5, -2))
console.log("works with for..of:", nr);
console.log("and everywhere you can use iterators");
const [one, two, three, four] = range(1,4);
const obj = one, two, three, four;
console.log(obj)
.as-console-wrappertop:0;max-height:100%!important
【讨论】:
【参考方案3】:你可以试试这个代码,但是你需要先创建一个函数:
var number_array = [];
function range(start,stop)
for (i =start; i < (stop+1); i++)
number_array.push(i);
return number_array;
【讨论】:
以上是关于等效于 Javascript 中的 python 范围 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
等效于 JavaScript 中 Python 的 sys.exit()
Javascript 等效于 C++ 中的 equal_range