解读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操纵窗口的方法小结
Jun 28 Javascript
node.js中的fs.openSync方法使用说明
Dec 17 Javascript
封装好的js判断操作系统与浏览器代码分享
Jan 09 Javascript
JavaScript实现的encode64加密算法实例分析
Apr 15 Javascript
jQuery移动端图片上传组件
Jun 12 Javascript
jQuery实现的简单前端搜索功能示例
Oct 28 jQuery
改变vue请求过来的数据中的某一项值的方法(详解)
Mar 08 Javascript
mpvue中使用flyjs全局拦截的实现代码
Sep 13 Javascript
vue-router命名路由和编程式路由传参讲解
Jan 19 Javascript
JS猜数字游戏实例讲解
Jun 30 Javascript
浅谈JavaScript中你可能不知道URL构造函数的属性
Jul 13 Javascript
ant design 日期格式化的实现
Oct 27 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 zend解密软件绿色版测试可用
2008/04/14 PHP
php 批量生成html,txt文件的实现代码
2013/06/26 PHP
PHP生成等比缩略图类和自定义函数分享
2014/06/25 PHP
修改WordPress中文章编辑器的样式的方法详解
2015/12/15 PHP
Symfony2联合查询实现方法
2016/03/18 PHP
YUI 读码日记之 YAHOO.util.Dom - Part.1
2008/03/22 Javascript
javascript 数字格式化输出的实现代码
2013/12/10 Javascript
node.js中的console.error方法使用说明
2014/12/10 Javascript
javascript 广告移动特效的实现代码
2016/06/25 Javascript
Three.js学习之几何形状
2016/08/01 Javascript
javascript实现一个网页加载进度loading
2017/01/04 Javascript
nodeJS实现路由功能实例代码
2017/06/08 NodeJs
JS实现多选框的操作
2020/06/24 Javascript
跟老齐学Python之有点简约的元组
2014/09/24 Python
Python编程实现二叉树及七种遍历方法详解
2017/06/02 Python
python中requests使用代理proxies方法介绍
2017/10/25 Python
Python简单定义与使用二叉树示例
2018/05/11 Python
pyqt5 实现多窗口跳转的方法
2019/06/19 Python
解决yum对python依赖版本问题
2019/07/05 Python
详解使用python绘制混淆矩阵(confusion_matrix)
2019/07/14 Python
python之拟合的实现
2019/07/19 Python
python常用排序算法的实现代码
2019/11/08 Python
pytorch 彩色图像转灰度图像实例
2020/01/13 Python
python3+opencv生成不规则黑白mask实例
2020/02/19 Python
Pandas将列表(List)转换为数据框(Dataframe)
2020/04/24 Python
Python正则表达式高级使用方法汇总
2020/06/18 Python
python 实现弹球游戏的示例代码
2020/11/17 Python
东南亚排名第一的服务市场:kaodim
2019/03/28 全球购物
优秀班集体获奖感言
2014/02/03 职场文书
应届电子商务毕业自荐书范文
2014/02/11 职场文书
中专生毕业个人鉴定
2014/02/26 职场文书
教师党员批评与自我批评
2014/10/15 职场文书
群众路线自查自纠工作情况报告
2014/10/28 职场文书
暑期实践个人总结
2015/03/06 职场文书
八月迷情观后感
2015/06/11 职场文书
Python if else条件语句形式详解
2022/03/24 Python