6.12 JS基础3

110 阅读2分钟

短路

赋值的时候才有短路运算,否则不用考虑短路

逻辑与的短路:

  • 根据逻辑与的口诀,找假
  • 左侧为false,右侧被短路

逻辑非的短路:

  • 根据逻辑非的口诀,找真
  • 左侧为true,右侧别短路

数组

数组的组成

  • 元素:每一个数据,可以是任意类型
  • 下标:元素的序号,从0开始
  • 长度:元素个数的长度 数组.length

数组元素的增加与删除

尾部

  • 元素.pop() 删除数组尾部的元素
  • 元素.push() 追加

头部

  • 元素.shift() 删除数组头部的元素
  • 元素.unshift(新元素) 在数组头部添加

中间

  • 元素.splice(开始下标,删除个数,新增元素...)

数组塌陷

元素删除后下标往前移

解决方法

  • 方法一:在删除元素后自减
        let arr = [5,0,0,0,0,12,0,8,0,0,0,11,0,9,0,7,16,0,14,6,0,19];
        
        for(let i=0;i<arr.length;i++){
            if(arr[i]==0){
               arr.splice(i,1)
               i--
            }
        }
        
        console.log(arr);
  • 方法二:倒序
        let arr = [5,0,0,0,0,12,0,8,0,0,0,11,0,9,0,7,16,0,14,6,0,19];
        
        for(let i=arr.length-1;i>=0;i--){
            if(arr[i]==0){
               arr.splice(i,1)
               
            }
        }

        console.log(arr);

数组的遍历

// 遍历:由于某个需求,需在对数组中的每个元素都要访问一次。

for(let i=0;i < arr.length ;i++){
            // console.log(i);
            // 将循环控制变量作为数组的下标
            console.log(arr[i]);
        }

while循环

执行逻辑:

先判断表达式是否成立,如果不成立就直接跳过while机构,继续后面的代码执行

while语法

let i=*;
while(表达式){
     循环体
     i++
}

例子

let i=;
while(i<=10){
     console.log(i);
     i++
}

for跟while的区别

区别

  • for:for循环是根据次数循环,循环次数已知
  • while:while循环是根据条件进行循环,循环次数未知

while循环的代码套路

break与continue

  • break:直接结束循环
  • continue:结束本次循环里continue后面的代码,继续下一次循环