对象无length属性时IE6/IE7中无法将其转换成伪数组(ArrayLike)
发布时间:2024-04-17 09:49:44
标签:length
有时需要将数组转成伪数组(ArrayLike),如下
var ary = ['one','two','three'];
var obj = {}; // 没有length属性
Array.prototype.push.apply(obj, ary);
for(var i in obj){
alert(i + ': ' + obj[i]);
}
IE8/9/Firefox/Safari/Chrome 依次弹出了obj的key及其value。即能转换成ArrayLike。
但IE6/7下则不能,没有输出任何信息表明obj仍然是个空对象。
如果给obj加个length属性,情况则不同
var ary = ['one','two','three'];
var obj = {length:0}; // 有length,值为0
Array.prototype.push.apply(obj, ary);
for(var i in obj){
alert(i + ': ' + obj[i]);
}
这次IE6/7(所有浏览器)中均弹出了key及其value,都能转换成ArrayLike
注意,length只能赋值为0而非它值,否则得到的对象key和value就不是一一对应的了。
var ary = ['one','two','three'];
var obj = {length:2}; // 有length,非零值
Array.prototype.push.apply(obj, ary);
for(var i in obj){
alert(i + ': ' + obj[i]);
}


猜你喜欢
- 1、保存列表为.txt文件#1/list写入txtipTable = ['158.59.194.213', '18.
- “博客就像一本书”这话其实几个月前深圳FB时就有扯到,这也不是什么新概念,也许本身就应该是这样。打个比方,当你拿到一本未看过的书时,理论上你
- 针对排序来说,order by 是我们使用非常频繁的关键字。结合之前我们对索引的了解再来看这篇文章会让我们深刻理解在排序的时候,是如何利用索
- 一、了解FTP服务器FTP(文件传输协议),运行在tcp洗衣上,使用两个端口,即数据端口和命令端口,也称之为控制端口。默认情况下,20是数据
- 前言:由于很多业务表因为历史原因或者性能原因,都使用了违反第一范式的设计模式。即同一个列中存储了多个属性值(具体结构见下表)。这种模式下,应
- 看到代码里面有这个1 class ResNeXt101(nn.Module): 2 def __init__(se
- CREATE VIEW dbo.vw_db_dictionary AS SELECT TOP 100 PERCENT dbo.sysobje
- 一、给定一个日期值,求出此日期所在星期的星期一和星期天的日期数据 例如给定一个日期 2010-09-01,求出它所在星期的星期一是2010-
- 表操作 例 1 对于表的教学管理数据库中的表 STUDENTS ,可以定义如
- hmac模块hmac模块用于生成HMAC码。这个HMAC码可以用于验证消息的完整性,其原理也很简单,就是一种加入了密钥的消息摘要,相比起MA
- 安装npm install --save reduxnpm install --save redux-saga配置actionactionT
- SQL Server2000中,如果数据库文件(非系统数据库文件)遇到错误的时候,我们该怎么办。以下是笔者以前的笔记。仅适用于非master
- 前言随着圣诞的到来,大家纷纷@官方微信给自己的头像加上一顶圣诞帽。当然这种事情用很多P图软件都可以做到。但是作为一个学习图像处理的技术人,还
- 分页设计我们经常会见到,这里有30个分页设计,以供大家欣赏欣赏借鉴。
- 1.前言(闲话)最近在做电磁炮,发现题目需要用到颜色跟踪,于是花了一点时间学了一下OpenMV,只学习OpenMV是远远不够的,还需要实现与
- Goland是JetBrains公司出品的一款开发Golang的工具。由于本人是JetBrains公司产品的重度使用者,好多都作为主力开发工
- Pandas处理CSV文件,分为以下几步:读取Pandas文件统计列值出现的次数筛选特定列值遍历数据行绘制直方图(柱状图)读取Pandas文
- 从最简单的Web浏览器的登录界面开始,登录界面如下:进行Web页面自动化测试,对页面上的元素进行定位和操作是核心。而操作又是以定位为前提的,
- offsetWidth 包括边框的宽度 clientWidth 不包括<table bord
- 本文实例为大家分享了微信小程序上传视频,供大家参考,具体内容如下微信开发者工具需要安装ffmpeg环境才能正常使用下面的官方方法。1、调用官