为了账号安全,请及时绑定邮箱和手机立即绑定

想请教一个关于类数组的问题

在script中这样写可以吗?尝试后发现把arr那一行注释掉,是可以成功的但是如果没有注释掉用arr来转换成a,就不会变颜色,所以觉得应该是类数组的问题,想请大家讲讲关于类数组的问题,谢谢大家!

var $div = $('div');

//var arr = { '0': '$div.get(0)', '1': '$div.get(1)', '2': '$div.get(2)' };

var a = Array.prototype.slice.call($div);

        for (var i = 0 ; i < a.length;i++) {

            a[i].style.color = "red";

        }


正在回答

2 回答

怎么创建一个类数组?这个问题就触及到了我的知识盲区了

0 回复 有任何疑惑可以回复我~
#1

Serena_Cecilia 提问者

好的,谢谢!我也自己再找找!加油(ง •̀_•́)ง
2018-01-12 回复 有任何疑惑可以回复我~
#2

冷寒轩111 回复 Serena_Cecilia 提问者

为什么要创建一个类数组呢,直接创建一个数组不好吗
2018-01-12 回复 有任何疑惑可以回复我~
#3

Serena_Cecilia 提问者 回复 冷寒轩111

只是看见jquery好像都是类数组比较多,所以想了解一下类数组是啥
2018-01-12 回复 有任何疑惑可以回复我~
#4

冷寒轩111 回复 Serena_Cecilia 提问者

我看了你学得课程 你到底是学啥的
2018-01-12 回复 有任何疑惑可以回复我~
#5

Serena_Cecilia 提问者 回复 冷寒轩111

额,学软件工程,前端和后台都做,不过还是菜鸟。。。
2018-01-12 回复 有任何疑惑可以回复我~
#6

冷寒轩111 回复 Serena_Cecilia 提问者

额 好吧
2018-01-12 回复 有任何疑惑可以回复我~
#7

Serena_Cecilia 提问者 回复 冷寒轩111

游戏之类的,只是自己觉得挺喜欢,自己搞着玩,但是看不懂(#-.-),以前梦想做刀剑神域动漫里面那种vr游戏,所以现在还是偶尔会想看看怎么弄游戏
2018-01-12 回复 有任何疑惑可以回复我~
#8

冷寒轩111 回复 Serena_Cecilia 提问者

你学到的过来吗 我就一个前端每天抽下班时间学了半年到现在还没学好
2018-01-12 回复 有任何疑惑可以回复我~
#9

Serena_Cecilia 提问者 回复 冷寒轩111

我还没工作,所以勉强还能应付
2018-01-12 回复 有任何疑惑可以回复我~
查看6条回复

我的天,你是想给每个div加颜色吧,至于写这么麻烦,直接

var $div = $('div');

$div.css('color','red')

多省事,类数组的话,他是有length属性,也可以用索引值获取到其中的每个项,但是没有数组的方法

0 回复 有任何疑惑可以回复我~
#1

Serena_Cecilia 提问者

谢谢哦,我才接触,感觉好多概念都分不清楚
2018-01-11 回复 有任何疑惑可以回复我~
#2

冷寒轩111 回复 Serena_Cecilia 提问者

你第一行代码得到的$div就是一个类数组对象啊,然后你直接用第三行代码转换为数组对象,然后再循环,这个思路才对吧,你第二行代码把每个div都拿出来,封装成一个对象是什么意思,而且你下面的代码也没有用到arr啊,你这不是多此一举吗,
2018-01-11 回复 有任何疑惑可以回复我~
#3

Serena_Cecilia 提问者

那么我第二行也是封装成了一个类数组嘛?其实当时就是想试试自己创建一个类数组,因为不会在网上搜了搜就想试试,然后再在第三行用新封装好的类数组转换成数组,结果不行,所以才没用 谢谢你哦!这么晚还回复
2018-01-11 回复 有任何疑惑可以回复我~
#4

冷寒轩111 回复 Serena_Cecilia 提问者

(其实我也是刚学没多长时间) 你第二行代码的写法就是用字面量的方式创建了一个对象啊(我也不知道你创建的对象有没有用,属性名字不应该加引号的),怎么又是封装成一个类数组呢?我刚才试了一下,对类数组循环也是可以的,不用再转换成数组
2018-01-11 回复 有任何疑惑可以回复我~
#5

Serena_Cecilia 提问者 回复 冷寒轩111

那对类数组该怎么循环嘞?本来想用for in的循环,还有怎么创建一个类数组嘞?
2018-01-12 回复 有任何疑惑可以回复我~
#6

冷寒轩111 回复 Serena_Cecilia 提问者

直接for循环就可以啊,你试一下,直接对 $div 循环
2018-01-12 回复 有任何疑惑可以回复我~
#7

Serena_Cecilia 提问者 回复 冷寒轩111

嗯,好的,我现在电脑不在旁边,我明天试试,谢谢你!还有那个类数组怎么创建嘞,哈哈
2018-01-12 回复 有任何疑惑可以回复我~
查看4条回复

举报

0/150
提交
取消
jQuery基础 (一)—样式篇
  • 参与学习       217511    人
  • 解答问题       1218    个

jQuery初入开启样式修炼,体验万能的jQuery样式集搭建网站布局

进入课程

想请教一个关于类数组的问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信