解读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事件机制扩展插件 jquery鼠标右键事件。
Dec 26 Javascript
jquery win 7透明弹出层效果的简单代码
Aug 06 Javascript
jquery实现类似淘宝星星评分功能有截图
Sep 15 Javascript
jQuery Easyui datagrid editor为combobox时指定数据源实例
Dec 19 Javascript
JS ES6中setTimeout函数的执行上下文示例
Apr 27 Javascript
js插件实现图片滑动验证码
Sep 29 Javascript
浅谈vue项目重构技术要点和总结
Jan 23 Javascript
vue.js 中使用(...)运算符报错的解决方法
Aug 09 Javascript
详解Vue+axios+Node+express实现文件上传(用户头像上传)
Aug 10 Javascript
JS实现匀速与减速缓慢运动的动画效果封装示例
Aug 27 Javascript
layui lay-verify form表单自定义验证规则详解
Sep 18 Javascript
优化Vue中date format的性能详解
Jan 13 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编程效率技巧
2015/08/13 PHP
解决yii2左侧菜单子级无法高亮问题的方法
2016/05/08 PHP
HTML Dom与Css控制方法
2010/10/25 Javascript
js封装的textarea操作方法集合(兼容很好)
2010/11/16 Javascript
js制作的鼠标悬浮时产生的下拉框效果
2012/10/27 Javascript
jquery遍历select元素(实例讲解)
2013/12/31 Javascript
JS+JSP checkBox 全选具体实现
2014/01/02 Javascript
JavaScript使用循环和分割来替换和删除元素实例
2014/10/13 Javascript
jQuery中$this和$(this)的区别介绍(一看就懂)
2015/07/06 Javascript
js实现新浪微博首页效果
2015/10/16 Javascript
探究Javascript模板引擎mustache.js使用方法
2016/01/26 Javascript
js实现商品抛物线加入购物车特效
2020/11/18 Javascript
SelecT下拉框选中和取值的解决方法
2016/11/22 Javascript
微信小程序授权获取用户详细信息openid的实例详解
2017/09/20 Javascript
layDate插件设置开始和结束时间
2018/11/15 Javascript
json数据格式常见操作示例
2019/06/13 Javascript
nodejs使用node-xlsx生成excel的方法示例
2019/08/22 NodeJs
JS通过识别id、value值对checkbox设置选中状态
2020/02/19 Javascript
PyQt 线程类 QThread使用详解
2017/07/16 Python
解决python3运行selenium下HTMLTestRunner报错的问题
2018/12/27 Python
pyqt5 QScrollArea设置在自定义侧(任何位置)
2019/09/25 Python
Python搭建HTTP服务过程图解
2019/12/14 Python
PythonPC客户端自动化实现原理(pywinauto)
2020/05/28 Python
让IE6、IE7、IE8支持CSS3的脚本
2010/07/20 HTML / CSS
GANT英国官方网上商店:甘特衬衫
2018/02/06 全球购物
Deichmann英国:德国鞋类零售商
2021/01/30 全球购物
活动邀请函范文
2014/01/19 职场文书
经理助理岗位职责
2014/03/05 职场文书
文化建设工作方案
2014/05/12 职场文书
公司大门门卫岗位职责
2014/06/11 职场文书
2014年卫生院工作总结
2014/12/03 职场文书
劳动仲裁撤诉申请书
2015/05/18 职场文书
用几道面试题来看JavaScript执行机制
2021/04/30 Javascript
JavaScript实现贪吃蛇游戏
2021/06/16 Javascript
Python实现8种常用抽样方法
2021/06/27 Python
Python OpenCV实现图像模板匹配详解
2022/04/07 Python