猫史档案馆


JS无奖竞猜

用户:七式草莓七式草莓查看:208 回复:12 评论:19 创建时间:2023-05-01T09:39:14


无奖竞猜:js中能不能用“for(i in range(0, 5, 2))”
注意:你可以任意定义变量、常亮、函数、类

广告:我们的作品预告贴 https://shequ.codemao.cn/community/538259


回复

上一页第 1 页 / 共 1 页下一页
145a145a

能(忙猜

点赞0


评论


编码喵编码喵

能啊,range返回的是有序数组😅

点赞0


评论


无极玄天无极玄天

咦没限定条件,emmmm,能!

点赞0


评论


145a145a

等一下,我好像错了

不能!!

for循环不完整

点赞0


评论

又没说for出来啥效果不是()而且,还有双引号呢,我自己定义个函数,然后把这串输进去,然后字符串检测不就解决了()


小苏打_小苏打_

可以的。

function range(a,b,r=1){
    let res = {}
    for(let i=a;i<b;i+=r){
        res[i] = i
    }
    return res;
}

for(let i of range(0,114,2)) console.log(i)

 

虽然但是,这种方喵占用大量的内存,特别是b特别大的时候。

所以我更建议用for of:

function* range(a,b,r){
    for(let i=a;i<b;i+=r){
        yield i
    }
}

for(i of range(1,514,2)) console.log(i)

值得一提的是,python也提供了类似的方法允许我们自定义一个range函数(即生成器)

def forever():
    while True:
        yield "forever"

for i in forever():
    print(i)

点赞0


评论

更正:实例1应用for...in...

我的是“for(i in range(0, 5, 2))”,不是“for(let i of range(0, 5, 2))”啊

去掉let也能运行,但是并不推荐。

前面加上个var i;不就行了

事实上不需要var/let直接写也是可以定义变量的(


无极玄天无极玄天

function t(aaa){
return 111}
t("for(i in range(0,5,2)")

点赞1


评论

也没说for出来啥效果不是()还有引号在呢()

要正经点的话就要分割字符串解决了,但问题也不大,只要转换成字符串能解决的都不是问题

……(无语了)


𝙲ℴ𝗌𝔦𝒹ₑ𝑟𝙲ℴ𝗌𝔦𝒹ₑ𝑟

不能

1.for语法结构缺少{}

2.i无法使用(除非已声明

3.range是py的函数,除非在js中实现

点赞0


评论

*注:不能声明以for为名的任何东西

解释:1.后面的{}只是我没写,你们可以自己加上 2.你可以任意定义变量、常亮、函数、类 3.自己写一个不行

没有明确答题范围

第二条和第三条上面都有,是你选择性眼瞎(doge)

可是没有说明是否可以更改题目原结构

额,只要代码中出现题目中的代码即可(注释、字符串、正则表达式不算)

阿这,真有人用注释吗,我觉得字符串已经很过分了()


yee剑走天下yee剑走天下

好像不行吧(?JS里面的in只能用作判断(?个人代码水平有限,有错勿喷(

点赞0


评论


1111111111111111211111111111111112

顶顶

点赞0


评论


无极玄天无极玄天

诶我发现还真可以的,实验代码我放这,然后把完整代码写出来

 

点赞0


评论


无极玄天无极玄天

let i=1
function range(a,b,c){
return [1,1,1]}
for(i in range(0,5,2)){
world.say(111)}

点赞0


评论


无极玄天无极玄天

center_image

ok啊,代码在截屏里面,应当是能用的

点赞0


评论

let i=1不知道能不能拿掉

用yield和*更好,python的是迭代器

不会......大佬教教我呗~