getElementsByName返回值为Object
来源:互联网 发布:脚本王者荣耀软件 编辑:程序博客网 时间:2024/05/22 14:39
今天我做一个js对checkbox选中进行取值时,发现一个有意思的问题,关于getElementsByName返回值的问题。
当时第一个反应就是,getElementsByName返回肯定属于Array类型啊,于是我放心大胆的使用了map遍历的方法。于是就出现了下面的错误:
很奇怪,一个数组的正常遍历怎么会报错啦,于是我用了instanceof 将他的属性输出来。
ckecks instanceof Array
返回类型是false!!!!既然不是一个数组,难怪map遍历不能成功。于是我将Array改成Object,这次返回了true。发现原来getElementsByName返回的是一个Object类型的对象。
我将它输出到控制台上,发现他的架构跟数组特别像:
我去查了下资料,原来getElementsByName返回的并不是并不是数组,而是一个叫做NodeList的集合,他并不属于数组,
但是他可以像数组一样获得.length和进行for循环遍历。
当然如果你真的需要用map遍历,也可以用Array.prototype.slice.call()将它转换成Array类型:
Array.prototype.slice.call(ckecks).map(function(value,i){console.log(i);});这样就能正常输出了。
阅读全文
0 0
- getElementsByName返回值为Object
- springmvc-Ajax-Objec返回值为Object
- 关于spring返回值Object
- getElementsByName
- getElementsByName
- getElementsByName 为什么不起作用(长度为0)
- # Java中遍历Object的属性和属性值,并以String形式返回||toString()一个对象Object||将一个对象转化为字符串String
- 处理方法返回值 Object数值型
- 处理方法返回值 Object 数值型
- 处理方法返回值 Object数值型
- div不管有没有name属性,只要设置id和name为同一个值即可实现getElementsByName功能
- ajax返回object Object解决方法
- avcodec_decode_audio2返回值为-1?
- avcodec_decode_audio2返回值为-1?
- avcodec_decode_audio2返回值为-1?
- findViewById 返回值为空
- 函数返回值为数组
- 返回值为函数指针
- angularjs下ng-repeat点击元素改变样式实现
- 单机版本的matlab 远程桌面登录会报错的”License checkout failed...Error 103“
- C#写一般处理程序遇到的一个String和int转换的问题
- 51nod 1572 宝岛地图(思维)
- 文章标题 ThinkPHP3.2.2-搜索分页
- getElementsByName返回值为Object
- linux下安装并配置redis 修改默认端口号,防止入侵
- 给定两个字符串,请设计一个方法来判定其中一个字符串是否为另一个字符串的置换(容易)
- 依赖ConstraintLayout报错,Could not find *****,Failed to resolve:*****
- iOS UITextView输入时自适应高度,placeholderLabel的设置。
- 一个有特点的正六边形RecyclerView---HexagonRecyclerView介绍篇
- 2017-07-20:考试(组合数、杨辉三角)SOJP1796
- PHP 读取xls文件
- 介绍一个使用 MVVM 和 RAC 开发的开源项目 MVVMReactiveCocoa