解读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 String.replace的妙用
Sep 08 Javascript
jquery load()在firefox(火狐)下显示不正常的解决方法
Apr 05 Javascript
JavaScript高级程序设计阅读笔记(六) ECMAScript中的运算符(二)
Feb 27 Javascript
innerHTML在IE中报错解决方案
Dec 15 Javascript
jQuery简单验证上传文件大小及类型的方法
Jun 02 Javascript
针对BootStrap中tabs控件的美化和完善(推荐)
Jul 06 Javascript
Vue2.0表单校验组件vee-validate的使用详解
May 02 Javascript
Three.js开发实现3D地图的实践过程总结
Nov 20 Javascript
详解SPA中前端路由基本原理与实现方式
Sep 12 Javascript
JavaScript 闭包的使用场景
Sep 17 Javascript
使用原生javascript开发计算器实例代码
Feb 21 Javascript
用vite搭建vue3应用的实现方法
Feb 22 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
PHP的构造方法,析构方法和this关键字详细介绍
2013/10/22 PHP
php实现带读写分离功能的MySQL类完整实例
2016/07/28 PHP
30个让人兴奋的视差滚动(Parallax Scrolling)效果网站
2012/03/04 Javascript
Jquery下EasyUI组件中的DataGrid结果集清空方法
2014/01/06 Javascript
jQuery操作元素css样式的三种方法
2014/06/04 Javascript
JS实现简易图片轮播效果的方法
2015/03/25 Javascript
AngularJS中如何使用$http对MongoLab数据表进行增删改查
2016/01/23 Javascript
学习Javascript闭包(Closure)知识
2016/08/07 Javascript
jQuery实现手机版页面翻页效果的简单实例
2016/10/05 Javascript
JS正则表达式修饰符中multiline(/m)用法分析
2016/12/27 Javascript
Javascript中构造函数要注意的一些坑
2017/01/23 Javascript
微信小程序后台解密用户数据实例详解
2017/06/28 Javascript
js的对象与函数详解
2019/01/21 Javascript
浅谈vue生命周期共有几个阶段?分别是什么?
2020/08/07 Javascript
将图片文件嵌入到wxpython代码中的实现方法
2014/08/11 Python
使用IPython下的Net-SNMP来管理类UNIX系统的教程
2015/04/15 Python
python爬虫基本知识
2018/03/05 Python
python基础教程项目四之新闻聚合
2018/04/02 Python
Python实现基于C/S架构的聊天室功能详解
2018/07/07 Python
利用pandas进行大文件计数处理的方法
2018/07/25 Python
在Pandas中给多层索引降级的方法
2018/11/16 Python
python 求10个数的平均数实例
2019/12/16 Python
python如何查看网页代码
2020/06/07 Python
css3的图形3d翻转效果应用示例
2014/04/08 HTML / CSS
纯CSS3实现自定义Tooltip边框涂鸦风格的教程
2014/11/05 HTML / CSS
俄罗斯购买内衣网站:Trusiki
2020/08/22 全球购物
越南母婴用品购物网站:Kids Plaza
2020/04/09 全球购物
linux面试题参考答案(8)
2015/08/11 面试题
金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)-> (一千零一拾一元整)输出
2015/05/29 面试题
财务总监管理职责范文
2014/03/09 职场文书
小学二年级学生评语
2014/04/21 职场文书
节约用水的口号
2014/06/20 职场文书
学校献爱心活动总结
2014/07/08 职场文书
公证委托书
2014/08/01 职场文书
实习证明模板
2015/06/16 职场文书
python tqdm用法及实例详解
2021/06/16 Python