JS——流程控制,函数,数组

简介: JS——流程控制,函数,数组

JS流程控制/函数/数组

分支流程控制

// 1 . if 的语法结构
        if (条件表达式1) {
            //执行语句1
        } else if(条件表达式2) {
            //执行语句2
        } else if(条件表达式3) {
            //执行语句3
        } else {
            //执行语句4
        }

三元表达式 条件表达式 ? 表达式1 : 表达式2

如果条件表达式结果为真 则返回表达式1的值 如果条件表达式结果为假 则返回表达式2的值

可以简化代码,代替if语据

switch 语句 匹配的值 全等

switch(表达式) {
    case value1:
        执行语句1;
        break;
    case value2:
        执行语句2;
        break;
    case value3:
        执行语句3;
        break;
    // ...
    default:
        执行语句4;
}
//循环结构
//1 . for循环
 // continue 关键字  
 // break 关键字
    for(初始化变量; 条件表达式;操作表达式) {
        if(条件表达式) {
            continue; //退出本次循环,跳到操作表达式
        } else {
            执行语句
            break;    //退出整个循环
        }
    }
// 1 . 数组(Array) :
      var arr = new Array();   //创建数组
      var arr = [1, 2, '我', '你', true];   //字面量,创建数组,数组内的数据称为数组元素
      console.log(arr);    //获取全部
      //访问  数组名[索引下标]
      console.log(arr[2]);
      // 遍历数组
      for (var i = 0;i < arr.length;i++) {
          console.log(arr[i]);
      }
      //新增数组元素
      arr[5] = 'pink';  //追加数组元素
      arr[0] = 8;     //修改
      //不能直接给数组名赋值
       // 冒泡排序法        把一系列数据按照一定顺序 排序
      var arr1 = [76,90,30,12,54,86,3,8,4];
  for(var j = 0;j <= arr1.length-1;j++) {
          for(var i = 0;i <= arr1.length-1-i;i++) {
          if(arr1[i]>arr1[i+1]) {
              var temp = arr1[i+1];
              arr1[i+1] = arr1[i];
              arr[i] = temp;
          }
      }
  }
    ```

函数就是封装了一段可以被重复执行调用的代码块 目的: 让代码重复使用

  1. 声明函数
// function 函数名() {
    //     函数体
    // }         1)function 声明函数的关键字 全部小写 
     2. 调用函数
     函数名()
    // 函数的封装
    // 函数的参数 (形参与实参)
    // function 函数名(形参1,形参2...) {
// }
// 函数名(实参1,实参2...);

函数形参与实参个数的匹配

1.实参个数>形参个数,取到形参个数

2.实参个数<形参个数,多余的形参定义为 undefined 最终结果为NaN

//函数的返回值
function 函数名() {
    return 需要返回的结果;
}
    函数名();

1)函数实现某种功能,最终结果返回给函数的调用者函数名(),通过return 实现.

2)只要函数遇见return,就把后面的结果 返回给函数的调用者

函数名() = return后面的结果

return 终止函数,

只能返回一个值,若用逗号隔开,返回最后一个值

若想返回多个值,用数组即可

function getResult(num1,num2,num3) {
    return [num1+num2,num1,num2,num1-num2]
}
getResult(1,2,45);

argument的使用

function fn() {
    console.log(arguments);   //里面储存了所有传递过来的实参
    console.log(arguments.length);
    //按照数组方式遍历数组
}
fn(1,2,3);
伪数组 并不是真正意义上的数组
1 . 具有数组 length 属性 
2.按照索引的方式进行存储 
3.没有真正数组的一些方法


相关文章
|
1天前
|
JavaScript 前端开发 索引
JS遍历数组里数组下的对象,根据数组中对象的某些值,组合成新的数组对象
这篇文章介绍了如何在JavaScript中遍历数组里数组下的对象,并根据对象的某些属性值组合成一个新的数组对象。主要内容包括使用ES6的`for...of`循环来遍历数组对象,然后根据需要提取对象中的属性值,并将它们放入新的对象中,最终形成一个新的对象数组以供使用。
|
5天前
|
JavaScript 前端开发
JavaScript基础&实战(5)js中的数组、forEach遍历、Date对象、Math、String对象
这篇文章介绍了JavaScript中的数组、Date对象、Math对象以及包装类(String、Number、Boolean),并详细讲解了数组的创建、方法(如forEach、push、pop、unshift、slice、splice)和遍历操作,以及工厂方法创建对象和原型对象的概念。
JavaScript基础&实战(5)js中的数组、forEach遍历、Date对象、Math、String对象
|
5天前
|
JavaScript 前端开发
JavaScript基础&实战(4)js中的对象、函数、全局作用域和局部作用域
这篇文章介绍了JavaScript中对象的基本概念和操作,包括对象属性和方法的使用、对象字面量的创建、函数的定义和作用域的概念,以及全局作用域和局部作用域的区别和特性。
JavaScript基础&实战(4)js中的对象、函数、全局作用域和局部作用域
|
5天前
|
JavaScript
js中有哪些函数?
js中有哪些函数?
7 0
|
5天前
|
JavaScript 前端开发 Java
JavaScript 特殊函数
JavaScript 特殊函数
6 0
|
5天前
|
JavaScript 前端开发
JavaScript 函数中break,continue,return 的区别
JavaScript 函数中break,continue,return 的区别
14 0
|
5天前
|
JavaScript 前端开发 索引
JavaScript数组相关的方法有哪些?
JavaScript数组相关的方法有哪些?
|
5天前
|
JavaScript 前端开发
记录Javascript数组类练习
记录Javascript数组类练习
|
5天前
|
JavaScript 容器
JS-数组的定义
JS-数组的定义
|
5天前
|
JavaScript 前端开发
JS - 立即执行函数
这篇文章解释了JavaScript中的立即执行函数(IIFE,Immediately Invoked Function Expression)的概念和用法,它用于创建局部作用域以避免全局变量的污染。文中提供了多种立即执行函数的示例,展示了如何通过不同的语法结构立即调用函数。
13 0

热门文章

最新文章