问个for的问题

zhjdg 2013-10-05 04:16:25
toString 在什么情况下,那个for循环不执行。也就是说不设enumerables = null这个值
for (var i in {toString: 1}) {

enumerables = null;

}
...全文
161 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
bbjbepzz 2013-10-07
  • 打赏
  • 举报
回复
引用 2 楼 u011461314 的回复:
在mootools有这样一段:
var enumerables = true;
for (var i in {toString: 1}) enumerables = null;
if (enumerables) enumerables = ['hasOwnProperty', 'valueOf', 'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString', 'constructor'];
这样不就有点多余吗?
这个好像是为了兼容IE的,toString,valueOf这些在IE下默认是枚举不出来的。
KK3K2005 2013-10-07
  • 打赏
  • 举报
回复
enumerables 你要看 这个单词什么意思
天际的海浪 2013-10-06
  • 打赏
  • 举报
回复
那个for循环本来就是不执行的 toString是不可壮举的属性(方法),就算你重定义toString也还是不可壮举的。
for(var i in {toString: 1,aaa:2}) {
alert(i);
}
zhjdg 2013-10-05
  • 打赏
  • 举报
回复
在mootools有这样一段:
var enumerables = true;
for (var i in {toString: 1}) enumerables = null;
if (enumerables) enumerables = ['hasOwnProperty', 'valueOf', 'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString', 'constructor'];
这样不就有点多余吗?
xuzuning 2013-10-05
  • 打赏
  • 举报
回复
{toString: 1} 是一个对象 所以循环必然进入

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧