解读JavaScript中 For, While与递归的用法


Posted in Javascript onMay 07, 2013

for循环:

for(i=start; i<end; i++) {
}

while循环: (注意, 若条件一直为真, 则会进入死循环, 浏览器就hang掉)
while (condition) {
     //do something;
     //change condition;
}

递归:使用for循环做substring
function substring(all, start, end) {
    for(i=start; i<=end; i++) {
         console.log(all[i]);
    }
substring("eclipse", 1, 4);   //clip

使用递归实现substring
function substring(all, start, end) {
    if(start >= end) {
        return all[start];
    }
    else {
        return all[start] + substring(all, start+1, end);
    }
substring("eclipse", 1, 4);    //clip

使用for循环访问对象属性:

对于数组,字符串, 我们使用index []访问特定的值; 对于对象,也是一样使用[], 但我们会使用一个特殊的变量: propertyName

var person = {
    name: "Morgan Jones",
    telephone: "(650) 777 - 7777",
    email: "morgan.jones@example.com"
};
for (var propertyName in person) {
    console.log(propertyName + ":"+ person[propertyName]);
}

使用for循环, 查找数组内的数据:
var table = [
    ["Person",  "Age",  "City"],
    ["Sue",     22,     "San Francisco"],
    ["Joe",     45,     "Halifax"]
];
var i;
var rows=table.length;
for (r=0;r<rows;r++) {
    var c;
    var cells = table[r].length;
    var rowText = "";
    for (c=0;c<cells;c++) {
        rowText += table[r][c];
        if (c < cells-1) {
            rowText += "  ";
        }
    }
    console.log(rowText);
}

结果:
Person Age City

Sue 22 San Francisco

Joe 45 Halifax

--------------------------------------------------------------------------------

break:

使用break立刻退出循环, 适用于for和while循环.

Javascript 相关文章推荐
jquery中dom操作和事件的实例学习-表单验证
Nov 30 Javascript
关于IE中getElementsByClassName不能用的问题解决方法
Aug 26 Javascript
JavaScript中自带的 reduce()方法使用示例详解
Aug 10 Javascript
jquery html5 视频播放控制代码
Nov 06 Javascript
ES6中Proxy代理用法实例浅析
Apr 06 Javascript
详解ES6中的三种异步解决方案
Jun 28 Javascript
vue中的计算属性实例详解
Sep 19 Javascript
使用vue-cli webpack 快速搭建项目的代码
Nov 21 Javascript
7个好用的JavaScript技巧分享(译)
May 07 Javascript
vue多页面项目中路由使用history模式的方法
Sep 23 Javascript
Vue this.$router.push(参数)实现页面跳转操作
Sep 09 Javascript
vue实现禁止浏览器记住密码功能的示例代码
Feb 03 Vue.js
JS Pro-深入面向对象的程序设计之继承的详解
May 07 #Javascript
基于JavaScript实现继承机制之原型链(prototype chaining)的详解
May 07 #Javascript
基于JavaScript实现继承机制之构造函数+原型链混合方式的使用详解
May 07 #Javascript
使用javascript:将其它类型值转换成布尔类型值的解决方法详解
May 07 #Javascript
JQuery+CSS提示框实现思路及代码(纯手工打造)
May 07 #Javascript
基于IE下ul li 互相嵌套时的bug,排查,解决过程以及心得介绍
May 07 #Javascript
解决javascript:window.close()在chrome,Firefox下失效的问题
May 07 #Javascript
You might like
一个查看session内容的函数
2006/10/09 PHP
PHP 替换模板变量实现步骤
2009/08/24 PHP
Yii框架组件和事件行为管理详解
2016/05/20 PHP
PHP和MYSQL实现分页导航思路详解
2017/04/11 PHP
深入理解JavaScript系列(22):S.O.L.I.D五大原则之依赖倒置原则DIP详解
2015/03/05 Javascript
html+js实现简单的计算器代码(加减乘除)
2016/07/12 Javascript
BootStrap实现轮播图效果(收藏)
2016/12/30 Javascript
Angular ng-animate和ng-cookies用法详解
2018/04/18 Javascript
JavaScript的级联函数用法简单示例【链式调用】
2019/03/26 Javascript
vue路由守卫+登录态管理实例分析
2019/05/21 Javascript
vue 实现input表单元素的disabled示例
2019/10/28 Javascript
手把手带你入门微信小程序新框架Kbone的使用
2020/02/25 Javascript
解决vue.js中settimeout遇到的问题(时间参数短效果不稳定)
2020/07/21 Javascript
JavaScript 实现轮播图特效的示例
2020/11/05 Javascript
token 机制和实现方式
2020/12/15 Javascript
[02:37]2015国际邀请赛选手档案—LGD.Xiao8
2015/07/28 DOTA
[00:37]2016完美“圣”典风云人物:AMS宣传片
2016/12/06 DOTA
python从网络读取图片并直接进行处理的方法
2015/05/22 Python
python写日志封装类实例
2015/06/28 Python
requests和lxml实现爬虫的方法
2017/06/11 Python
关于Python 3中print函数的换行详解
2017/08/08 Python
Windows系统下PhantomJS的安装和基本用法
2018/10/21 Python
python并发编程多进程之守护进程原理解析
2019/08/20 Python
python3中calendar返回某一时间点实例讲解
2020/11/18 Python
基于Python爬取搜狐证券股票过程解析
2020/11/18 Python
香港连卡佛百货官网:Lane Crawford
2019/09/04 全球购物
C,C++的几个面试题小集
2013/07/13 面试题
科研课题实施方案
2014/03/18 职场文书
初中优秀班集体申报材料
2014/05/01 职场文书
政治思想表现评语
2014/05/04 职场文书
社区志愿者培训方案
2014/06/10 职场文书
教育专业毕业生推荐信
2014/07/10 职场文书
2014年学校总务处工作总结
2014/12/08 职场文书
初中重阳节活动总结
2015/05/05 职场文书
2015年推普周活动方案
2015/05/06 职场文书
基于Pygame实现简单的贪吃蛇游戏
2021/12/06 Python