JS基础知识(二)

数组

  1. 数组是指一组数据的集合,其中的每个数据被称作元素,在数组中可以存放任意类型的元素。数组是一种将一组数据存储在单个变量名下的优雅方式。
  2. []是数组的字面量,只要在js中看到[]就知道是数组。
  3. 数组里面的数据用逗号分隔
  4. 数组里面的数据,称为数组元素。
  5. 利用数组字面量,创建空数组,最常用
 var arr = [];  //利用数组字面量,创建空数组
        var arr1 = [1,2,'p',true];
  1. 获取数组元素
    数组的索引:用来访问数组元素的序号(下标从0开始)
    数组可以通过索引来访问,设置子,修改对应的数组元素,我们可以通过‘数组名[索引]'的形式来获取数组中的元素。
    这里的访问就是获取得到的意思
    如果没有这个数组元素,所以输出的结果是undefined

  2. 遍历
    把数组中的每个元素从头到尾访问一遍

  3. 数组的长度
    数组名.length

  4. 新增数组元素

    1. 修改length的长度
      在这里插入图片描述
    2. 通过修改数组索引新增数组元素
      可以通过修改数组索引的方式追加数组元素
      在这里插入图片描述
var arr = [2, 0, 6, 1, 77, 0, 52, 0, 25, 7];
        var arr1 = [];

        for (var i = 0; i < arr.length; i++) {
            if (arr[i] >= 10) {
                arr1[arr1.length] = arr[i];

            }
        }
        console.log(arr1);
  1. 冒泡排序
    是一种算法,把一系列的数据按照一定的顺序进行排列显示(从小到大或者从大到小)
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
 var arr = [3, 2, 5, 1, 4];

        for (var i = 0; i <= arr.length - 1; i++) {
            for (var j = 0; j <= arr.length - i - 1; j++) {
                if (arr[j] > arr[j + 1]) {
                    var temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }
        console.log(arr);

函数

  1. 在JS里面,可能会定义非常多的相同代码或者功能相似的代码,这些代码可能需要大量重复使用。虽然for循环语句也能实现一些简单的重复操作,但是比较具有局限性,此时我们就可以使用JS中的函数。

  2. 函数:就是封装了一段可被重复调用执行的代码块。通过此代码块可以实现大量代码的重复使用。

  3. 函数使用分为两步:声明函数 和 调用函数
    声明函数
    function 函数名() {
    函数体
    }

    1. function声明函数的关键字 全部小写
    2. 函数是做某件事,函数名一般是动词 seyHi
    3. 函数不调用自己不执行
      调用函数
      函数名();
      sayHi();
      调用的时候千万不要忘记添加小括号
      声明函数本身并不会执行代码,只有调用函数时才会执行函数体代码。
  4. 函数封装
    函数的封装是把一个或者多个功能通过函数的方式封装起来,对外只提供一个简单的函数接口。
    简单理解:封装类似于将电脑配件整合组装到机箱中(类似快递打包)

  5. 函数参数:
    形参与实参
    形参是用来接收实参的,形参类似于一个变量

    在声明函数的小括号里面是形式上的参数,在调用函数的小括号里面是实际 上的参数

    function 函数名(形参1,形参2…) {
    函数体
    }
    函数名(实参1,实参2…);

  6. 函数形参实参个数不匹配问题
    如果实参多余形参个数,则多余的不参与运算。
    如果实参的个数小于形参的个数
    在这里插入图片描述
    在这里插入图片描述

  7. 函数的返回值 return 语句
    函数将值返回给调用者,此时通过使用return语句就可以实现
    return 只能返回一个值
    在这里插入图片描述
    函数没有return ,则返回undefined。
    在这里插入图片描述

  8. arguments的使用
    在这里插入图片描述
    arguments是伪数组,并不是真正的意义上的数组

    1. 具有数组的length的属性
    2. 按照索引的方式进行存储的
    3. 它没有真正数组的一些方法 pop() push()
    4. 我们可以按照数组的方式遍历arguments
function getMax() {
            var max = arguments[0];
            for (var i = 1; i < arguments.length; i++) {
                if (arguments[i] > max) {
                    max = arguments[i];
                }
            }
            return max;
        }
        console.log(getMax(1, 2, 3));
  1. 函数判断年份是否是闰年
function year(n) {
            var flag = false;
            if (n % 4 == 0 && n % 100 != 0 || n % 400 == 0) {
                flag = true;
            }
            return flag;
        }
        var num = prompt('年份');
        alert(year(num));
  1. 函数可以调用另外一个函数
function fn1() {
            console.log(111);
            fn2();
            console.log('fn1');
        }

        function fn2() {
            console.log(222);
            console.log('fn2');


        }
        fn1();

在这里插入图片描述
函数调用函数,判断平闰年

function backDay() {
            var year = prompt('请您输入年份:');
            if (isYear(year)) {
                alert('当年2月份有29天');
            } else {
                alert('当年2月份有28天');
            }
        }
        backDay();

        function isYear(n) {
            var flag = false;
            if (n % 4 == 0 && n % 100 != 0 || n % 400 == 0) {
                flag = true;
            }
            return flag;
        }
  1. 两种函数的声明方式

    1. 利用函数关键字自定义函数(命名函数)
      function fn() {
      }
      fn();
    2. 函数表达式(匿名函数,没有函数名)
      var 变量名 = function() {};
      (1) fun是变量名 不是函数名
      (2)函数表达式声明方式跟声明变量差不多,只不过变量里面存的是值,而 函数表达式里面存的是函数(变量名里面的不是值是函数)
      (3)函数表达式也可以进行传递参数
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值