[求助]for...in不能给数组赋值吗? <script><!-- var vehicle = new Array(5);//创建数组对象 for(var i in vehicle){ vehicle[i]= "汽车<p>"; document.write(vehicle[i]); }--></script>完全没有显式!~和Java新的for循环很像,但不一样啊。搞得我有些晕! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 答:不能。因为: for(var i in vehicle)中的i不是下标,而已经是数组中元素的值了。 答:不对,看差了,以为是JAVA呢。 答:由于var vehicle = new Array(5);但空间并没有真正分配。解决方法:方法之一:var vehicle = new Array(0,0,0,0,0);然后用:for-in 方法之二:for(var i =0;i<=4;i++) 这一点和Java不同啊 public static void main(String[] args) { int[] a = new int[5]; for(int i:a){ i=10; System.out.println(i); } } for(var i in vehicle){在 verhicle里面没有任何东西,这个和Java有点类似的List list = new ArrayList(100);此时,只代表事先分配了100个初始化空间,但并不代表 list里面已经有100个数据了,他依然是空的。 不同的是java可以直接在for中对数组或集合元素做赋值或修改js必须要显式的将空间开辟出来,才能在for...in中修改元素的值。这正是我开始被困惑住的地方。总算看清了.... 我才发现for...in的价值在于数组的下标为自定义标签时好用啊!也能循环实现! 急!!高手进,小弟有,junit 读XML问题 来个高手 高高手 帮我解决下这个问题!!!!!!!! 用JAVA模拟实现一个简单的web nevigator 想了好久也不知道怎么错的,向高手求助! 在 Window 里面, 如何知道自已启动的 java 线程名呢? 问个有关建立新线程的问题 一个奇怪的包引入问题,大家看看吧 csdn里的等级是靠登陆时间还是分数阿? 请问大家JBoss的稳定性和效率如何? 我不懂java,想问各位,java到底干嘛用的 Java中如何获取带返回集(触发器中返回)的insert语句 请问客户端写入对象成功服务器却收不到是什么原因?
方法之一:var vehicle = new Array(0,0,0,0,0);
然后用:for-in
方法之二:for(var i =0;i<=4;i++)
int[] a = new int[5];
for(int i:a){
i=10;
System.out.println(i);
}
}
js必须要显式的将空间开辟出来,才能在for...in中修改元素的值。
这正是我开始被困惑住的地方。总算看清了....