解读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 相关文章推荐
javascript数组组合成字符串的脚本
Jan 06 Javascript
jQuery get和post 方法传值注意事项
Nov 03 Javascript
JQuery 技巧和窍门整理(8个)
Apr 22 Javascript
node.js WEB开发中图片验证码的实现方法
Jun 03 Javascript
jscript读写二进制文件的方法
Apr 22 Javascript
JavaScript中的this机制
Jan 30 Javascript
jQuery实用小技巧_输入框文字获取和失去焦点的简单实例
Aug 25 Javascript
Ajax基础知识详解
Feb 17 Javascript
vue.js移动端app之上拉加载以及下拉刷新实战
Sep 11 Javascript
JS实现百度网盘任意文件强制下载功能
Aug 31 Javascript
详解a标签添加onclick事件的几种方式
Mar 29 Javascript
详解微信小程序图片地扯转base64解决方案
Aug 18 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
PHP+Tidy-完美的XHTML纠错+过滤
2007/04/10 PHP
分享一段php获取linux服务器状态的代码
2014/05/27 PHP
YII Framework教程之异常处理详解
2016/03/14 PHP
php+ajax注册实时验证功能
2016/07/20 PHP
php 遍历目录,生成目录下每个文件的md5值并写入到结果文件中
2016/12/12 PHP
解析John Resig Simple JavaScript Inheritance代码
2012/12/03 Javascript
浅析js封装和作用域
2013/07/09 Javascript
jQuery截取指定长度字符串代码
2014/08/21 Javascript
javascript实现控制div颜色
2015/07/07 Javascript
基于jquery实现最简单的选项卡切换效果
2016/05/08 Javascript
jquery判断checkbox是否选中及改变checkbox状态的实现方法
2016/05/26 Javascript
BootStrap使用popover插件实现鼠标经过显示并保持显示框
2016/06/23 Javascript
jQuery点击导航栏选中更换样式的实现代码
2017/01/23 Javascript
Bootstrap实现的标签页内容切换显示效果示例
2017/05/25 Javascript
seajs实现强制刷新本地缓存的方法分析
2017/10/16 Javascript
angularjs 获取默认选中的单选按钮的value方法
2018/02/28 Javascript
redux中间件之redux-thunk的具体使用
2018/04/17 Javascript
详解ES6中的三种异步解决方案
2018/06/28 Javascript
angularjs获取到My97DatePicker选中的值方法
2018/10/02 Javascript
详解Vue实战指南之依赖注入(provide/inject)
2018/11/13 Javascript
vue实现吸顶、锚点和滚动高亮按钮效果
2019/10/21 Javascript
Vue组件通信入门之Provide和Inject机制
2019/12/29 Javascript
[31:55]完美世界DOTA2联赛循环赛 IO vs GXR BO2第一场 11.04
2020/11/05 DOTA
Python发送以整个文件夹的内容为附件的邮件的教程
2015/05/06 Python
Python使用gensim计算文档相似性
2016/04/10 Python
使用Python实现Wake On Lan远程开机功能
2020/01/22 Python
美国高级工作服品牌:Carhartt
2018/01/25 全球购物
跑步、骑行和铁人三项的高性能眼镜和服装:ROKA
2018/07/06 全球购物
美国新娘礼品店:The Paisley Box
2020/09/08 全球购物
数百万免费的图形资源:Freepik
2020/09/21 全球购物
党员的自我评价范文
2014/01/02 职场文书
先进个人推荐材料
2014/12/29 职场文书
廉洁自律承诺书范文
2015/04/28 职场文书
《童年》读后感(三篇)
2019/08/27 职场文书
springboot 启动如何排除某些bean的注入
2021/08/02 Java/Android
frg-100简单操作(设置)说明
2022/04/05 无线电