【java学习之路】(javaWeb篇)004.JavaScript part2

函数

概述:在JavaScript脚本语言中也有函数概念,函数其实就是将某一个功能进行封装,当你事项用这个功能的时候,需要调用、执行这个函数

比如:我们在前面课程当中学习过一些内置函数

  • 内置函数alert:这个功能是在浏览器正上方弹出一个警告框

  • 内置函数prompt:这个功能是在浏览器正上方弹出一个提示框

比如他们使用的时候:函数名字+小括号

在javaScript脚本语言当中:函数使用也是分为两部分:声明+调用

注意:函数在JS当中声明方式有两种:关键字function声明函数、表达式声明函数

关键字函数基本使用

概述:JS当中如果想声明关键字形式函数,需要用到关键字function进行声明。

基本语法:

<script>
    //关键字形式函数分为两部分声明+调用
    //声明部分(函数名字务必符合命名标识符规范)
    function fun() {
        //这里面是书写代码地方(函数体)
        console.log("鹅鹅鹅,去向向天歌");
        console.log("白毛浮绿水,红掌拨清波");
    }
    //函数调用部分
    fun();
    fun();
    fun();
</script>

形参和实参

<script>
    //形参【形式参数】和实参【实际参数】
    //计算两个数字之和
    //a、b所谓形参
    function sum(a, b) {
        console.log(a + b);
    }
    //100、200实参
    sum(100, 200);
    sum("张三", "李四");
</script>

全局变量和局部变量

局部变量:

作为函数形参【只能在函数体中使用】、在函数体中声明变量【局部变量:只能在函数体中使用】

全局变量:

只要不是局部变量即为全局变量【全局变量可以在JS行为层中任意地方使用】

作用域

概述:作用域【scope】代码书写范围;

<script>
    //作用域书写代码范围
    //称之为全局作用域
    console.log(123);
    //函数也有作用域概念
    function fun(a, b) {
        console.log(a);
        console.log(b);
    }
    fun(5, 6);
</script>

JS当中没有函数重载概念

概述:在JS当中如果有多个重名的函数,永远是后者覆盖前者,没有函数重载问题

关键字return

概述:return是JS当中关键字,经常结合函数一起使用,可以将函数计算完记过返回;

注意:return关键字只能在函数体中使用

1:在函数体中return关键字后面语句不再执行

2:可以将函数体中计算完结果返回,可以在函数体外面使用

<script>
    function mul() {
        console.log(123);
        console.log(456);
        return;
        console.log(789);//不再执行
    }
    mul();
</script>

数组

array:数组

概述:在JS当中也有数组存在,数组你可以理解为是一个‘容器’,可以存储很多有序数据。

数组在JS当中是引用类型数据,在JS当中数组是用中括号表示

数组基本使用

<script>
    //在JS当中数组使用[]进行表示
    //JS当中数组是引用类型数据
    console.log([]);
    console.log(typeof []);
    //数组目的:可以一次性存储很多有序数据
    console.log([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
</script>

JS当中[]代表是数组,数组引用类型数据

JS当中数组可以存储很多元素(数据:可以是任意类型)

数组经常存储、读取、修改、新增数据

<script>
    //为了在JS当中使用数组方便
    //经常将右侧数组赋值给左侧变量(通过变量名字可以访问存储数组)

    //存储数据
    var arr = ["我爱你祖国", 12306, true, NaN, [2, 3, 4]];

    //为了读取数据:通过枚举法 + 下角标(索引值)获取数组里面存储数据
    console.log(arr[0]);
    console.log(arr[3]);
    console.log(arr[4]);
    //修改数组里面数据
    arr[0] = "我爱你母亲";
    arr[1] = 110;
    arr[4][0] = 66666;
    console.log(arr);
    //新增数据
    arr[5] = "我是后来的";
    arr[6] = "稍等我也来了";
    arr[9999] = "我是老嘎达";
    console.log(arr);
    console.log(arr[100]);
</script>

length属性

概述:length是数组一个属性,主要的作用是可以获取数组元素总个数;因此它返回的是一个数字;

<script>
    //length属性:可以获取数组里面元素总个数
    var arr = ["吃饭", "睡觉", "打豆豆", "喝酒", "烫头"];
    //数组里面一共是五个元素
    console.log(arr.length);
    //数组里面元素是从零开始的
    //数组的length属性常用语遍历数组
    for (var i = 0; i < arr.length; i++) {
        //获取数组里面元素
        console.log(arr[i]);
    }
</script>

<script>
    //数组常见算法题:
    //比如:计算数组里面元素累加和问题
    var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
    var sum = 0;
    for (var i = 0; i < arr.length; i++) {
        sum += arr[i];
    }
    //计算完毕获取结果
    console.log(sum);
</script>

<script>
    //获取数组里面最大元素
    var arr = [66, 3, 2, 99, 26, 21, 19, 88];
    //获取最大数字
    var max = arr[0];
    for (var i = 0; i < arr.length; i++) {
        //后者元素大于前者进行重新赋值
        if (arr[i] > max) {
            max = arr[i];
        }
    }
    console.log(max);
</script>

数组方法

pop||push

概述:他们两者是数组方法,主要的作用是可以在数组尾处移除、添加元素。

pop:移除元素

push:新增元素

<script>
    //声明数组
    var arr = ["幺鸡", "五万", "三饼", "二条", "二筒", "发财"];
    //pop:是数组的一个方法,主要的作用是可以在数组尾巴出移除 一项元素
    var result = arr.pop();
    var result1 = arr.pop();
    console.log(arr);
    console.log(result);
    console.log(result1);
</script>

  • pop是数组方法,可以在数组尾处移除掉一项元素

  • Pop方法有返回数值,返回的是移除掉的那项元素

<script>
    var result = arr.push("曹操");
    var result1 = arr.push("刘备", "关二爷", "张飞");
    console.log(arr);
    console.log(result);
    console.log(result1)

</script>

push也是数组方法,主要的作用是可以向数组尾出添加一项、多项元素

push方法执行完毕有返回数值,返回的数值是数组新增完元素总个数;

shift||unshift

概述:shift||unshift他们两者是数组方法,可以在数组头部添加、移除元素。

<script>
    //shift:在数组头部删除一项元素
    var arr = ["北京", "上海", "广州", "深圳"];
    //头部删除一项元素
    // var result = arr.shift();
    // console.log(arr);
    // console.log(result);

    //头部添加一个、多个元素
    var result = arr.unshift("杭州", "苏州", "小米粥");
    console.log(arr);
    console.log(result);
</script>

  • Shift在数组头部移除一项元素、返回删除掉的那个元素

  • unshift在数组头部添加一个、多个元素,返回的是数组元素总个数(新的总个数)

reverse

概述:它也是数组方法,主要的作用是可以让数组里面元素进行倒置。

<script>
    //reverse:数组方法让数组元素进行倒置
    var arr = ["香港港独", "最近最好别吃香蕉", "最近广厦事件"];
     arr.reverse();
    console.log(arr);
</script>

indexOf

概述:它也是数组方法,主要的作用是可以获取数组当中某一个元素索引值。

<script>
    //reverse:数组方法让数组元素进行倒置
    var arr = ["香港港独", 1, 2, 3, 4, 5, "香蕉", "香蕉", "香蕉", "最近广厦事件"];
    // arr.reverse();
    // console.log(arr);
    //indexOf:可以检测某一个元素索引值
    console.log(arr.indexOf("香蕉"));//6
    console.log(arr.indexOf("贾成豪"));//-1
</script>

  • indexOf是数组方法,可以获取数组当中某一个元素索引值

  • 注意1:获取到的是从左到右第一个符合条件索引值

  • 注意2:如果获取的是数组里面没有元素,返回索引值是-1

join

概述:它也是数组方法,主要的作用是可以通过某一个字符将数组转换为字符串。

<script>
    //join:将数组转换为字符串
    var arr = ["北京", "南京", "燕京", "东京", "吴京", "亮晶晶"];
    console.log(arr.join());
    console.log(arr.join("*"));
    console.log(arr.join(""));
    //(9) [1, 2, 3, 4, 5, 6, 7, 8, 9]
	//(3) [1, 2, 3] (3) [4, 5, 6] (3) [7, 8, 9]
</script>

concat

概述:它也是数组方法,主要的做用时将多个数组合并为一个数组

<script>
    //concat:将多个数组合并为一个数组
    var a = [1, 2, 3];
    var b = [4, 5, 6];
    var c = [7, 8, 9];
    console.log(a.concat(b, c));
    console.log(a, b, c);
</script>

slice

概述:它也是数组方法,主要的作用是可以切割数组;

语法格式:

注意:切割的时候,包含起始位置,但是不包含结束位置,

slice方法对于起始数组没有任何影响

arr.slice(起始索引值,结束索引值);

<script>
    //slice:数组方法用于切割数组
    //代表起始位置索引值,结束索引值 (包含起始位置,但是不包含结束为)
    var arr = ["小浣熊", "麻花", "包子", "烤鸭", "棒棒糖"];
    //一个参数:代表起始位置
    var newArr1 = arr.slice(1);
    var newArr2 = arr.slice(1, 3);
    var newArr3 = arr.slice(-2);
    console.log(newArr3);
</script>

splice

概述:它也是数组方法,主要的作用是切割数组。

语法格式:Arr.splice(起始位置,长度);

<script>
    var arr = ["王者荣耀", "吃鸡", "lol", '魔兽', "传奇", "劲舞团", "CF", "DNF", "逆战"];
    //切割
    // var newArr1 = arr.splice(2, 3);
    // console.log(newArr1);
    // console.log(arr);

    //插入
    // arr.splice(2, 0, "哈哈哈插入数据", "么么哒");
    // console.log(arr);

    //替换
    arr.splice(2, 2, "哈哈哈插入数据", "么么哒");
    console.log(arr);
</script>

注意:slice不会改变原数组;splice是会改变原数组

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值