解读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 BS,dialog控件自适应大小
Jul 06 Javascript
JavaScript的单例模式 (singleton in Javascript)
Jun 11 Javascript
利用JQuery和JS实现奇偶行背景颜色自定义效果
Nov 19 Javascript
使用firebug进行调试javascript的示例
Dec 16 Javascript
解决jquery实现的radio重新选中的问题
Jul 03 Javascript
JS脚本实现动态给标签控件添加事件的方法
Jun 02 Javascript
关于js原型的面试题讲解
Sep 25 Javascript
jQuery ajax MD5实现用户注册即时验证功能
Oct 11 Javascript
Javascript 实现全屏滚动实例代码
Dec 31 Javascript
js验证手机号、密码、短信验证码代码工具类
Jun 24 Javascript
使用JavaScript中的lodash编写双色球效果
Jun 24 Javascript
详解Javascript实践中的命令模式
May 05 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 URL验证正则表达式
2011/07/19 PHP
php列出一个目录下的所有文件的代码
2012/10/09 PHP
基于PHP生成静态页的实现方法
2013/05/10 PHP
ThinkPHP6.0如何利用自定义验证规则规范的实现登陆
2020/12/16 PHP
用JavaScript隐藏控件的方法
2009/09/21 Javascript
javascript 正则替换 replace(regExp, function)用法
2010/05/22 Javascript
运用JQuery的toggle实现网页加载完成自动弹窗
2014/03/18 Javascript
alert和confirm功能介绍
2014/05/21 Javascript
jQuery带箭头提示框tooltips插件集锦
2014/11/17 Javascript
15个jquery常用方法、小技巧分享
2015/01/13 Javascript
Javascript基础教程之argument 详解
2015/01/18 Javascript
js实现完全自定义可带多级目录的网页鼠标右键菜单方法
2015/02/28 Javascript
详解addEventListener的三个参数之useCapture
2015/03/16 Javascript
js实现表单多按钮提交action的处理方法
2015/10/24 Javascript
jQuery获取单击节点对象的方法
2016/06/02 Javascript
jQuery简单实现tab选项卡切换效果
2016/06/20 Javascript
Select2.js下拉框使用小结
2016/10/24 Javascript
nodejs入门教程四:URL相关模块用法分析
2017/04/24 NodeJs
vue-cli中打包图片路径错误的解决方法
2017/10/26 Javascript
微信小程序实现slideUp、slideDown滑动效果及点击空白隐藏功能示例
2018/12/11 Javascript
JS实现电话号码的字母组合算法示例
2019/02/26 Javascript
浅谈Express.js解析Post数据类型的正确姿势
2019/05/30 Javascript
vue实现路由不变的情况下,刷新页面操作示例
2020/02/02 Javascript
Vue实现Header渐隐渐现效果的实例代码
2020/11/05 Javascript
[02:29]完美世界高校联赛上海赛区回顾
2015/12/15 DOTA
Python使用爬虫抓取美女图片并保存到本地的方法【测试可用】
2018/08/30 Python
python 利用matplotlib在3D空间绘制二次抛物面的案例
2021/02/06 Python
CSS3实现滚动条动画效果代码分享
2016/08/03 HTML / CSS
HTML5 中新的全局属性(整理)
2013/07/31 HTML / CSS
美国顶级奢侈茶:Mighty Leaf Tea(美泰茶)
2016/11/26 全球购物
澳洲女装时尚在线:Blue Bungalow
2018/05/05 全球购物
AutoShack.com加拿大:北美主要的汽车零部件零售商
2019/07/24 全球购物
德国苹果商店:MacTrade
2020/05/18 全球购物
2014年乡镇工作总结
2014/11/21 职场文书
2014个人年终工作总结范文
2014/12/15 职场文书
党章党规党纪学习心得体会
2016/01/14 职场文书