转自: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. ASP.NET Core Web 应用程序系列(二)- 在ASP.NET Core中使用Autofac替换自带DI进行批量依赖注入(MVC当中应用)

    在上一章中主要和大家分享在MVC当中如何使用ASP.NET Core内置的DI进行批量依赖注入,本章将继续和大家分享在ASP.NET Core中如何使用Autofac替换自带DI进行批量依赖注入. P ...

  2. python链式调用REST API把参数放到URL中

    需求格式:GET /users/:user/repos 程序: class Chain(object): def __init__(self,path=''): self._path=path def ...

  3. OC-系统音效播放

      一.介绍 AudioToolbox.framework是一套基于C语言的框架,使用它来播放音效其本质是将短音频注册到系统声音服务(System Sound Service).System Soun ...

  4. 036.[转] JNDI 学习

    使用外置服务器(如tomcat)时,如果一个服务器启动多个项目,可以使用JNDI配置数据源,这样每个项目都可以获取到Tomcat 配置的 JNDI的数据源. 在学习 jsp 的时候,作用域对象 pag ...

  5. Python语法速查: 6. 循环与迭代

    返回目录 (1)while循环与for循环 while仅能用于普通循环,而for除了可以做循环外,还可以遍历序列.集合.字典.迭代器等. 需要注意的是,在类似:for i in somelist: 的 ...

  6. HDL的三种描述方式

    结构化描述 结构化描述方式是最原始的描述方式,是抽象级别最低的描述方式,但同时也是最接近于实际的硬件结构的描述方式.结构化的描述方式,思路就像在面包板上搭建数字电路一样,唯一的不同点就是我们通过HDL ...

  7. DRF--ModelSerializer

    前戏 在之前我们写序列化器的时候,写的很low,遇到反序列化的有时候还需要重写该字段,用post请求的时候,还要重写create方法,用put请求的时候,还需要重写update方法.总而言之,写起来很 ...

  8. python有哪些优点跟缺点

    显著的优点 1. 语言简洁优美,Java能实现的python都能实现(除安卓开发),python能实现的Java不一定能实现如(自动化运维,爬虫) 2. 跨平台,window, linux,mac通用 ...

  9. Linux下修改Mysql密码的三种方式

    前言 有时我们会忘记Mysql的密码,或者想改一个密码,以下将对这两种情况修改密码的三种解决方法做个总结 本文都以用户为 root 为例 一.拥有原来的myql的root的密码 方法一: 在mysql ...

  10. oracle--共享磁盘挂载

    01,查看挂载的磁盘 [root@SHLPDBWX01 ~]# fdisk -l Disk /dev/sda: bytes heads, sectors/track, cylinders Units ...