JavaScript基础(三)
for循环嵌套
循环嵌套不是什么特殊语法,就是说js中的许多语法结构都可以嵌套使用,for也可以
循环嵌套时,代码执行次数变多,通常使用是在2层左右
while循环
规则:
先进行条件检测,如果为true,执行循环体代码
再检测条件,再为true再执行循环体,以此类推
直到条件为false时循环结束
while (条件) {
// 循环体
}
for和while的使用场景
for循环适用于次数确定的重复操作(for使用较多)
while循环适用于不确定次数的重复操作
do..while循环
规则:
立刻执行一次循环体代码
再进行第一次条件检测,如果为true,再次执行循环体,并依次类推
当条件为false时,循环结束。
do {
// 循环体
} while (条件);
与while的区别:
while是先检测条件再执行
do..while是先执行再检测,至少执行一次
用来对while循环的结构进行改进
break和continue
break在循环中使用用于结束循环(10个包子,吃了三个以后吃不了了,不吃了,break)
continue在循环中使用用于结束本次循环,继续执行下面的循环
// 演示break:
/* for (var i = 1; i <= 10; i++) {
console.log(‘吃包子‘);
// 吃完第三个后,吃不下去了,后面的不吃了,用break结束
if (i === 3) {
console.log(‘不好意思,吃不下去了‘);
break;
}
} */
// 演示continue:
for (var i = 1; i <= 10; i++) {
if (i === 3) {
console.log('有钉子,不吃了,换下一个');
continue;
}
console.log('吃包子');
}
表达式和语句 (概念)
表达式:
概念:表达式指的是,具有结果的式子
常见的表达式:
数据: 100 'abc' false ....
运算符参与的式子: 1+2 5 < 13 'abc' && 200
语句:
概念:指的是一段完整的操作。
常见语句:
js中提供的语句:if语句、switch语句、for循环语句、while循环语句、do..while循环语句
普通语句:有实际功能含义的,并以;结尾的式子
var num = 100;
alert('嘿嘿嘿');
console.log('呵呵呵');
var sum = 2 + 6 * 8;
一段程序是由多个语句组成的,每个语句是由多个表达式组成的。
数组
为什么要有复杂类型_数组
基本类型都只能表示一个值,如果有很多数据需要存储,需要声明很多变量保存,麻烦
数据之间的关联性不强
什么是数组
数组就是一种可以同时保存多个数据的数据形式。
数组怎么操作
数组的声明
var arr = [1, 2, 3, 4]; 最为常用的用法
var arr = new Array('a', 'b', 'c');
特殊用法: var arr = new Array(4);
注意:如果在new Array()中设置一个数值,表示数组默认长度,没啥用
数组的元素
数组中的数据称为数组的元素
数组的长度属性
概念:数组的长度属性用来表示数组中的元素个数。
格式:数组.length
取值:length属性的值为数值类型,表示数组中的元素个数
设置length操作:
设置值比实际元素个数少
后续的元素会被删除,如果希望清空,可以设置length为0
设置值比实际元素个数多(没用)
数组后会产生一些空位,没有实际的数据,没意义
数组的索引(下标):
概念:数组中的元素按照索引排列,索引从0开始,自动递增。
作用:可以根据索引操作数组中的某个元素
格式: 数组[索引值]
可以进行获取,也可以设置
数据的遍历操作
概念:通过循环获取数组中的所有元素。
普通遍历方式(正向遍历):
for (var i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
反向遍历
数组中最大的索引值为 arr.length - 1
for (var i = arr.length - 1; i >= 0; i--) {
console.log(arr[i]);
}
给数组新增元素的方式
可以使用 数组.length 作为索引,添加新元素
var arr4 = [‘a‘, ‘b‘, ‘c‘, ‘d‘];
arr4[arr4.length] = 200;
arr4[arr4.length] = 200;
arr4[arr4.length] = 200;
arr4[arr4.length] = 200;
arr4[arr4.length] = 200;
arr4[arr4.length] = 200;
console.log(arr4); // 添加了6个新元素
基本类型和复杂类型的区别
可存储的数据个数不同:基本类型只能表示一个值,复杂类型可以保存多个值。
在内存中的存储方式不同
在js语法中我们操作的数据都属于临时数据,临时数据存储在内存中
基本类型在内存单元中存储的是具体值
复杂类型在内存单元中存储的是具体值的地址(指针、引用)
进行复制操作后的结果不同
赋值操作实际上是复制内存单元中的值
基本类型进行复制前后,两个数据没关系(复制成功了)
复杂类型进行复制前后,两个数据实际上是同一个(没有达到复制的目的)
原文地址:https://www.cnblogs.com/itxcr/p/11600133.html