解读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实现点击标题输入详细信息
Apr 16 Javascript
jquery监听div内容的变化具体实现思路
Nov 04 Javascript
用模版生成HTML的的框架jquery.tmpl使用详解
Jan 07 Javascript
js实现改进的仿蓝色论坛导航菜单效果代码
Sep 06 Javascript
jquery显示隐藏元素的实现代码
May 19 Javascript
js 轮播效果实例分享
Dec 28 Javascript
js实现不提示直接关闭网页窗口
Mar 30 Javascript
vue-resource 拦截器(interceptor)的使用详解
Jul 04 Javascript
微信小程序注册60s倒计时功能 使用JS实现注册60s倒计时功能
Aug 16 Javascript
除Console.log()外更多的Javascript调试命令
Jan 24 Javascript
React中this丢失的四种解决方法
Mar 12 Javascript
微信小程序实现用table显示数据库反馈的多条数据功能示例
May 07 Javascript
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
ecshop 订单确认中显示省市地址信息的方法
2010/03/15 PHP
php读取3389的脚本
2014/05/06 PHP
php获取json数据所有的节点路径
2015/05/17 PHP
用javascript来实现动画导航效果的代码
2007/12/16 Javascript
jQuery UI Dialog控件中的表单无法正常提交的解决方法
2010/12/19 Javascript
jquery入门—编写一个导航条(可伸缩)
2013/01/07 Javascript
jQuery的deferred对象详解
2014/11/12 Javascript
Javascript获取表单名称(name)的方法
2015/04/02 Javascript
JavaScript中switch语句的用法详解
2015/06/03 Javascript
jquery实现的点击翻书效果代码
2015/11/04 Javascript
javascript数据结构之双链表插入排序实例详解
2015/11/25 Javascript
jquery validate表单验证的基本用法入门
2016/01/18 Javascript
jQuery插件支持同一页面被多次调用
2016/02/14 Javascript
微信小程序 POST请求(网络请求)详解及实例代码
2016/11/16 Javascript
JavaScript实现的原生态Tab标签页功能【兼容IE6】
2017/09/18 Javascript
ui-router中使用ocLazyLoad和resolve的具体方法
2017/10/18 Javascript
解决vue脚手架项目打包后路由视图不显示的问题
2018/09/20 Javascript
jQuery实现判断滚动条滚动到document底部的方法分析
2019/08/27 jQuery
react中hook介绍以及使用教程
2020/12/11 Javascript
javascript实现固定侧边栏
2021/02/09 Javascript
[19:14]DOTA2 HEROS教学视频教你分分钟做大人-维萨吉
2014/06/24 DOTA
[08:04]TI4西雅图DOTA2前线报道 海涛探访各路人马
2014/07/09 DOTA
[02:28]DOTA2 2015国际邀请赛中国区预选赛首日现场百态
2015/05/26 DOTA
[02:53]DOTA2亚洲邀请赛 NewBee战队巡礼
2015/02/03 DOTA
[02:17]快乐加倍!DOTA2食人魔魔法师至宝+迎霜节活动上线
2019/12/22 DOTA
Python进阶之递归函数的用法及其示例
2018/01/31 Python
python复制文件到指定目录的实例
2018/04/27 Python
Python实现绘制双柱状图并显示数值功能示例
2018/06/23 Python
如何通过python计算圆周率PI
2020/11/11 Python
Canvas globalCompositeOperation
2018/12/18 HTML / CSS
澳大利亚领先的在线美容商城:Adore Beauty
2017/04/14 全球购物
开工仪式策划方案
2014/05/23 职场文书
年终奖发放方案
2014/06/02 职场文书
大学生创业计划书
2014/08/14 职场文书
机械工程及自动化专业求职信
2014/09/03 职场文书
MySQL数据库索引的最左匹配原则
2021/11/20 MySQL