转自: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. 挑战10个最难回答的Java面试题(附答案)

    译者:Yujiaao segmentfault.com/a/1190000019962661 推荐阅读(点击即可跳转阅读) 1. SpringBoot内容聚合 2. 面试题内容聚合 3. 设计模式内容 ...

  2. python爬虫执行js代码-execjs

    一.安装模块 pip install PyExecJS execjs会自动使用当前电脑上的运行时环境(建议用nodejs,与Phantomjs) 二.简单的使用 import execjs js_ob ...

  3. 松软科技web课堂:SQLServer之UCASE() 函数

    UCASE() 函数 UCASE 函数把字段的值转换为大写. SQL UCASE() 语法 SELECT UCASE(column_name) FROM table_name SQL UCASE() ...

  4. Data Management Technology(4) -- 关系数据库理论

    规范化问题的提出 在规范化理论出现以前,层次和网状数据库的设计只是遵循其模型本身固有的原则,而无具体的理论依据可言,因而带有盲目性,可能在以后的运行和使用中发生许多预想不到的问题. 在关系数据库系统中 ...

  5. SQL Server要拷贝默认目录下的使用数据库需要停止的服务

  6. 机器学习(1)——K近邻算法

    KNN的函数写法 import numpy as np from math import sqrt from collections import Counter def KNN_classify(k ...

  7. JUC-4-CopyOnWriteArrayList

    什么是CopyOnWrite容器 CopyOnWrite容器即写时复制的容器.通俗的理解是当我们往一个容器添加元素的时候,不直接往当前容器添加,而是先将当前容器进行Copy,复制出一个新的容器,然后新 ...

  8. MongoDB学习笔记(一、MongoDB入门)

    目录: 为什么要使用nosql mongo的简介 应用场景 入门demo 为什么要使用nosql: 随着互联网的发展,用户数量激增,访问量的上涨,传统的关系型数据库的性能也趋于瓶颈. 关系型数据库难以 ...

  9. 201871010123-吴丽丽 《面向对象程序设计(Java)》第十六周学习总结

    201871010123-吴丽丽 <面向对象程序设计(Java)>第十六周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...

  10. R语言-laohuji

    项目三-tiger机 说明:每玩一次老ji游戏需要花费一元钱.钻石符号(DD)可以百搭,并且能够将最终的金额加倍. 任务分解: 任务分解的步骤: 将复杂的任务分解为一些简单的子任务: 使用实例: 用通 ...