转自:http://blog.csdn.net/lushuaiyin/article/details/8541500

  1. <html>
  2. <body>
  3. <b><center>
  4. js中for循环的研究
  5. </center></b>
  6. <script type="text/javascript">
  7. //使用for (obj in array)的形式obj不用声明。
  8. var mycars = new Array();
  9. mycars[0] = "Saab";
  10. mycars[1] = "Volvo";
  11. mycars[2] = "BMW";
  12. //实验一:
  13. /*
  14. for (x in mycars)
  15. {
  16. //alert('--'+x);//每次弹出--0,--1,--2,而不是变量的内容
  17. document.write(mycars[x] + "------x---<br />")
  18. }
  19. alert(x);//2
  20. */
  21. //实验二:
  22. /*
  23. for (var y in mycars)
  24. {
  25. document.write(mycars[y] + "--y---<br />")
  26. }
  27. alert(y);//2
  28. */
  29. //实验三:
  30. /*
  31. for (i=0;i<mycars.length;i++)
  32. {
  33. document.write(mycars[i] + "---i----<br />")
  34. }
  35. alert(i);//3,之所以是3,是因为在循环外,最后还要走一次i++
  36. */
  37. //实验四:
  38. /*
  39. for (var k=0;k<mycars.length;k++)
  40. {
  41. document.write(mycars[k] + "---k---<br />")
  42. }
  43. alert(k);//3
  44. */
  45. //实验五:
  46. /*
  47. for (var h=0;h<mycars.length;h++)
  48. {
  49. document.write(mycars[h] + "---h---<br />")
  50. var objhhh='haha';
  51. }
  52. alert(objhhh);//haha
  53. */
  54. </script>
  55. 从上面的实验可以得出以下几点结论:
  56. 1,在for循环中变量都是全局的。不像java,在函数内声明的变量,在函数外不能直接访问,js都是全局的,
  57. 所以可以访问。(实验五)
  58. 2,基于上面的结论,我们可以知道,在for()循环中,括号中的变量最后已经改变了,而且是全局变量,
  59. 可以在循环外被访问。
  60. 3,对于for循环,本实验要说明的是在for(..  in ..)
  61. 或者for(..=0;  ..<..;  ..++)这两种形式变量前面的var可以声明,也可以不声明。(实验一到实验四)。
  62. js默认会帮你声明一个var(否则的话,这个变量本应该是undefined了)。
  63. 4,再谈for(..  in ..)和for(..=0;  ..<..;  ..++)的区别:
  64. for(x  in arr)中变量x是循环的索引数,即1,2,3....,(实验一)。
  65. 这和java不一样,在java中的for(x  in arr),x已经是数组中的变量了,也就是变量的值。
  66. 而在for(i=0;  i<arr.length;  i++)这种形式就明确指出了,i就是索引值。
  67. </body>
  68. </html>

js中for循环的研究的更多相关文章

  1. js中的循环语句

    js中的循环语句可分为三种:1.while:2.do……while:3.for. while的语法为 while (exp) {    //statements;} var a=1,b=0; whil ...

  2. js中的循环

    js中的循环是我们经常要用到的,现在进行一些归纳. 一.javascript种的循环. 1.循环对象 var o = { name: 'Jack', age: 20, city: 'Beijing' ...

  3. java和js中for循环的区别

    java中for循环,先执行语句后循环 for (int i=1;i<10;i++){ for(int b=1;b<=i;b++){ System.out.print(b+"*& ...

  4. JS中的循环嵌套 BOM函数

    [嵌套循环特点]                           外层循环转一次,内层循环转一圈              外层循环控制行数,内层循环控制每行元素个数             [做 ...

  5. JS中for循环变量作用域--解决for循环异步执行的问题

    被这个问题困惑了很久,终于在网上找到了答案,感谢~ 现在分享给大家~ js中如何让一个for循环走完之后,再去执行下面的语句? 这涉及for循环变量作用域的问题,js中作用域只有函数作用域和全局作用域 ...

  6. 简单聊一聊JS中的循环引用及问题

    本文主要从 JS 中为什么会出现循环引用,垃圾回收策略中引用计数为什么有很大的问题,以及循环引用时的对象在使用 JSON.stringify 时为什么会报错,怎样解决这个问题简单谈谈自己的一些理解. ...

  7. Js中for循环的阻塞机制

    Js阻塞机制,跟Js引擎的单线程处理方式有关,每个window一个JS线程.所谓单线程,在某个特定的时刻只有特定的代码能够被执行,并阻塞其它的代码. 由于浏览器是事件驱动的(Event driven) ...

  8. JS实现停留几秒sleep,Js中for循环的阻塞机制,setTimeout延迟执行

    //第一种,使用while循环 function sleep(delay) { var start = (new Date()).getTime(); while((new Date()).getTi ...

  9. JS中for循环嵌套

    for 循环 for语句也是一种前测试循环语句,但它具有在 执行循环之前初始化变量 和 定义循环后要执行的代码的能力 for循环中专门提供了位置来放置循环的三个表达式 定义一个循环需要做实现这三步: ...

随机推荐

  1. 执行超大的.sql文件处理,100M++

    sqlcmd的命令参数如下: 1    [-U 登录 ID]             [-P 密码] 2  [-S 服务器]                [-H 主机名]           [-E ...

  2. 使用dom4j类操作xml文档

    dom4j操作xml数据 1.Document对象相关 ①读取XML文件,获得document对象. SAXReader reader = new SAXReader(); Document docu ...

  3. Implement Property Value Validation in Code 在代码中实现属性值验证(XPO)

    This lesson explains how to set rules for business classes and their properties. These rules are val ...

  4. 解决html导出pdf中文乱码问题的正确姿势

    简介 本文使用jspdf 1.5.3版.GitHub地址:https://github.com/MrRio/jsPDF jspdf是歪果仁开发的,因此在一开始就没想过支持非英文以外的文字,这就导致了非 ...

  5. 如何制作gif图片?教你把gif图片缩小100倍大小的妙招!

    移动互联网是短视频的时代,5G的到来更是让短视频蓬勃发展,视频的发展让人们看到了动态的机会,图片也需要动起来,图片动起来应该是比较早的,gif图片很早就有,我们常见的动态表情,现在用的比较多的是视频的 ...

  6. U盘的几种分类及格式

    u盘常见的几种分类: 1.按u盘材质来分,可以分为金属u盘.塑料u盘.软胶u盘.皮革u盘.木质u盘.珠宝u盘等.这些主要是考虑u盘本身外壳所用材质的. 2.从u盘容量来分,就是8GB.16GB.32G ...

  7. oracle体系结构简介

    oracle体系结构简介 一.物理存储结构    1.数据文件       存放数据库数据,以dbf为扩展名.将数据放在多个数据文件中,       再将数据文件分放在不同的硬盘中,可以提高存取速度. ...

  8. php对微信支付回调处理的方法(合集)

    支付完成后,微信会把相关支付结果和用户信息发送给商户,商户需要接收处理,并返回应答. 对后台通知交互时,如果微信收到商户的应答不是成功或超时,微信认为通知失败,微信会通过一定的策略定期重新发起通知,尽 ...

  9. 远程访问阿里云服务器jupyter

    官网链接 一.pip安装jupyter安装Anaconda的话,会自动按照jupyter,就不需要再使用pip安装了 pip3 install jupyter 二.生成jupyter notebook ...

  10. Day8 - Python基础8 异常处理、反射、单例模式

    本节内容: 1:异常处理 2:反射 3:单例模式 1.异常处理  1.异常简介 在编程过程中为了增加友好性,在程序出现bug时一般不会将错误信息显示给用户,而是现实一个提示的页面,通俗来说就是不让用户 ...