while循环

语法:

do while循环

语法:do{循环体}while(条件表达式);
特点:do while循环不管条件是否成立,无论如何循环体都会执行一次。
使用场合:用户输入密码,如果密码不是123456,继续输入密码,直到密码正确为止
例子:do {
var psd = prompt("请输入密码");
}while( psd != "123456");

for循环

语法:for(语句1;语句2;语句3){循环体}
一般情况下:语句1写循环增量的声明,语句2写循环判断条件,语句3写循环增量的改变

break和continue

循环中遇到break,会跳出整个循环
continue //英文翻译为继续。循环中遇到continue会结束当前本次循环,整个循环还是会等到循环条件不成立或遇到break才会结束整个循环。

例题:计算1-100之间除了能被7整除之外所有整数的和。

var sum = 0;
for(var i = 1 ; i <= 100; i++){
if(i % 7 == 0){
continue;
}
sum += i;
}
console.log(sum);

嵌套循环

只要是符合js语言的代码都可以做为循环体,

数组

数组的声明:1、使用构造函数的方式声明(如果声明一个东西用了new关键字,那就 就是构造函数。),语法
var 数组名 = new Array();
3,输入如何存放数据,使用下标索引,下标:从0开始依次累加的一个整数
语法:数组名[下标] = 值;
arr[0] = 10;

4,取值 使用下标索引。
console.log(arr[0]);
console.log(arr[1]);//如果没有下标为1的值,会得到undefined.

5,修改值,使用下标索引
arr[0] = 100;
console.log(arr[0]); //值为100
注意:下标其实可以使用字符串,前提是它内容本身是数字,例如:"10";会转换成数值的10
注意:如果这样声明数组,小括号里面只有一个Number
类型的值的话,那个这个值是数组的长度,如果存的
一个值不是Number类型的话,这个值就是这个值,
不会成为这个数组的长度。
var arr2 = new Array(10);
consolie.log(arr2);得到的结果为arr2.length(10).

常用的好用的声明方法:
var arr4 = [10,20,30,40,50];
依旧找对应的下标取值从0开始,例如我要取30的值
console.log(arr4[2]);

6,js中的数组和其他语言中的数组有点不一样,js中的
数组可以存放任意的值。
varr arr5 = ["123",10,true,undefined,null,function test(){alert("哈哈")}];
虽然js中的数组可以存放任意类型的值,但是不建议这样做。

js中的数组的长度是可以更改的。

数组的长度

1、数组的长度是由数组里面存放元素的个数,
用length来获取,我们可以通过修改length的值,从而
改变数组的长度。
例子:
var arr1 = [10,20,30,40,50]
arr1.length = 10;
后面没有给值的元素的值是undefined.

2、如果把数组length的值改小

var arr2 = [10,20,30,40,50]
arr2.length = 3;
后面2个的值就被删了,如果要得到arr2[4],结果为
undefined,再如果恢复该数组的长度,但是值就不能
恢复了,
3、清空数组
var arr3 = [1,2,3,4];
第一种方法:修改数组的length为0;
第二种方法:可以让这个数组 指向一个空数组
arr3 = [];

4、获得数组最后一个下标等于数组的length - 1.
5、使用数组的长度来添加新元素

数组的遍历

1、使用for循环正向遍历

2、使用for循环反射遍历

例:

  var arr = [10,20,30,40,50];
for (var i = arr.length-1; i >= 0; i--){
console.log(arr[i]);
} //得到结果[50,40,30,20,10]

翻转数组两种方法

 var arr = [10,20,30,40,50];
for(var i = 0 ; i < arr.length / 2; i++){
//i是可以控制循环的次数的,也就是交换的次数
//如何交换 下标 第0位 和 arr.length-1-0
// 1 和 arr.length-1-1
// 2 和 arr.length-1-2 var temp = arr[i];
arr[i] = arr[arr.length - 1 - i];
arr[arr.length-1-i] = temp; }
console.log(arr);

  

// 第二种
//使用反向遍历数组,把每个元素装进新数组中。
  var arr = [10,20,30,40,50];
  var arrNew = [];
  for(var i = arr.length-1 ; i >= 0 ; i--) {
    arrNew[arrNew.length] = arr[i];
  }
  console.log(arrNew);

  

JavaScript循环和数组常用操作的更多相关文章

  1. 快学Scala 第三课 (定长数组,变长数组, 数组循环, 数组转换, 数组常用操作)

    定长数组定义: val ar = new Array[Int](10) val arr = Array("aa", "bb") 定长数组赋值: arr(0) = ...

  2. js,jQuery数组常用操作小结

    一.js中数组常用操作小结 (1) shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift() ...

  3. Linux Shell数组常用操作详解

    Linux Shell数组常用操作详解 1数组定义: declare -a 数组名 数组名=(元素1 元素2 元素3 ) declare -a array array=( ) 数组用小括号括起,数组元 ...

  4. JavaScript中对数组的操作

    原文:JavaScript中对数组的操作 一:数组的使用 1.定义:JavaScript中对数组的定义有两种形式.如: .var arr = [12,3,5,8]; .var arr = new Ar ...

  5. 数组toString()方法,数组常用操作

    int[] arr ={1,2,3,4,5}; String arrString = Arrays.toString(arr); //输出[I@7150bd4d System.out.println( ...

  6. javascript循环遍历数组输出key value

    javascript循环遍历数组输出key value用$.each方法肯定不行的 所以采用如下方法<pre> markers = []; markers[2]=3; markers[3] ...

  7. JavaScript数组常用操作

    前言 相信大家都用惯了jquery或者underscore等这些类库中常用的数组相关的操作,如$.isArray,_.some,_.find等等方法.这里无非是对原生js的数组操作多了一些包装. 这里 ...

  8. JavaScript数组常用操作总结

    我们在日常开发过程中,使用到原生 JavaScript的时候,有时候会频繁的对数组进行操作,今天我把工作以来,经常用到的有关 JavaScript数组的方法总结一下,方便日后工作的时候查找使用! 一. ...

  9. java基础之数组常用操作

    常用的对数组进行的操作 1.求数组中最大值,最小值 思路:假设下标为0的元素是最大值,遍历数组,依次跟max进行比较,如果有元素比这个max还大,则把这个值赋给max.最小值同样 public cla ...

随机推荐

  1. 搭建Kubernetes服务集群遇到的问题

    kube-proxy问题: Apr 12 09:42:49 compute1 kube-proxy[12965]: E0412 09:42:49.602342 12965 reflector.go:2 ...

  2. 转:JAVA 的wait(), notify()与synchronized同步机制

    原文地址:http://blog.csdn.net/zyplus/article/details/6672775 转自:https://www.cnblogs.com/x_wukong/p/40097 ...

  3. Win10系统桌面右键新建没有内容怎么恢复

    Win10系统桌面右键新建没有内容怎么恢复 添加txt文本文档 运行->regedit,打开注册表编辑器 展开HKEY_CLASSES_ROOT 找到.txt 选中.txt,修改右侧窗格的“默认 ...

  4. 根据后台加载数据,添加loading动画

    <script> var current = 0; var hit = @hits; $(this).scroll(function(){ var viewHeight =$(this). ...

  5. ios多播委托

    在现实中回调的需求也分两种 一对一的回调. 一对多的回调. 对于一对一的回调,在IOS中使用delegate.block都能实现.而一对多的回调基本就是通知中心了. 假如现在有一个需求,我们以图片下载 ...

  6. 【JMeter】JMeter如何输出测试报告

    环境要求 1:jmeter3.0版本之后开始支持动态生成测试报表 2:jdk版本1.7以上 3:需要jmx脚本文件 基本操作 1:在你的脚本文件路径下,执行cmd命令:jmeter -n -t tes ...

  7. OC动画:CAAnimationGroup

    //贝塞尔曲线路径 UIBezierPath *movePath = [UIBezierPath bezierPath]; [movePath moveToPoint:CGPointMake(10.0 ...

  8. WINDOWS SERVER 2008 R2安装指南

    说明:适用于以下几种操作系统: 1.Windows Server 2008 Standard Endition R2 2.Windows Server 2008 Enterprise Endition ...

  9. Kinect2.0点云数据获取

    接上一篇:Kinect2.0获取数据 http://blog.csdn.net/jiaojialulu/article/details/53087988 博主好细心,代码基本上帖过来就可以用,注释掉的 ...

  10. NgDL:第四周深层神经网络

    4.3核对矩阵维数 根据前向的矩阵,可以计算出右上的规律,对于第L层的w来说,其维数为(n[L],n[L-1]),n[L]表示第L层的单元数. 4.4为什么深层神经网络会好用? 如果要做一个人脸识别的 ...