javaweb 2021.10.02(上)

本文详细介绍了JavaScript中的数组定义与操作,包括动态扩容特性。接着讲解了函数的两种定义方式,以及如何定义带有返回值的函数,并强调了JavaScript中函数不支持重载。此外,还阐述了arguments隐形参数的使用,它允许获取所有函数参数。最后,讨论了JavaScript中的自定义对象,包括Object形式和花括号形式的创建,以及如何访问和定义对象的属性和方法。
摘要由CSDN通过智能技术生成

18、Javascript数组

JS中数组的定义:

​ 格式:

​ var 数组名=[];//空数组

​ var 数组名=[1,‘abc’,true];//定义数组同时赋值元素

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript">
        var arr=[];//定义一个空数组
        //alert(a.length);//0

        arr[0]=12;
        //alert(arr[0]);//12
        alert(arr.length);//1
        //javascript语言中的数组,只要我们通过数组下表赋值,那么最大的下标值,
        //就会自动给数组做扩容操作
        arr[2]="abc";
        //alert(arr.length);//3

        //alert(arr[1]);//undefined
        for (var i=0;i<arr.length;i++){
            alert(arr[i]);
        }
    </script>
</head>
<body>

</body>
</html>

19、JavaScript函数

函数的两种定义方式

第一种:使用function关键字来定义函数。

​ 使用的格式如下:

​ function 函数名(形参列表){

​ 函数体

}

在JavaScript语言中,如何定义带有返回值的函数?

只需要在函数体内直接使用return语句返回值即可!

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript">
        //定义一个无参函数
        function f() {
            alert("无参函数f()被调用了")
        }
        //函数调用===才会执行
        //f();
 //------------------------------------
        //定义一个有参函数
        function f1(a,b) {
            alert("有参函数f1()被调用了a=>"+a+"  b=>"+b);
        }
        //f1(12,"abc");
 //------------------------------------
        //定义带有返回值的参数
        function sum(num1,num2) {
            var result=num1+num2;
            return  result;
        }
        alert(sum(500,166));
    </script>
</head>
<body>

</body>
</html>

第二种:

​ 使用格式如下:

​ var 函数名=function(形参列表){函数体}

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript">
        var fun=function () {
            alert("无参函数");
        }
        //fun();
        var fun1=function (a,b) {
            alert("有参函数a=>"+a+",b=>"+b);
        }
        //fun1(1,2);
        var fun2=function (num1,num2) {
            return num1+num2;
        }
           alert(fun2(500,166));
    </script>
</head>
<body>

</body>
</html>

注:在Java中函数允许重载。但是在JS中函数的重载会直接覆盖掉上一次的定义

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript">

        function fun(a,b) {
        alert("有参函数fun(a,b)");
    }
        function fun() {
            alert("无参函数fun()");
        }
       fun(123,"abc");//无参函数fun()
    </script>
</head>
<body>

</body>
</html>

20、函数的arguments隐形参数(只在function函数内)

就是在function函数中不需要定义,但却可以直接用来获取所有参数的变量。我们管他叫隐形参数。

​ 隐形参数特别像Java基础的可变长参数一样。

​ public void fun(obje…args);

​ 可变长参数其他就是一个数组。

​ 那么js中的隐形参数也跟Java的可变长参数一样。操作类似数组。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript">
        function f() {
            //alert(arguments.length);//可查看参数个数
            //alert(arguments[0]);
            //alert(arguments[1]);
            //alert(arguments[2]);
           for (var  i=0;i<arguments.length;i++){
               alert(arguments[i]);
           }
        }
        f(1,"ad",true);//3
        // alert("无参函数fun()")
        //需求:要求编写一个函数,用于计算所有参数相加的和并返回
        function sum(num1,num2) {
            var result=0;
            for (var i=0;i<arguments.length;i++){
                if(typeof arguments[i]=="number"){
                    result+=arguments[i];
                }

            }
            return result;
        }
        alert(sum(1,1,1,1,1,"abc"))//5
    </script>
</head>
<body>

</body>
</html>

21、js中的自定义对象

Object形式的自定义对象

​ 对象的定义:

​ var 变量名=new Object(); //对象实例(空对象)

​ 变量名.属性名=值; //定义一个属性

​ 变量名.函数名=function(){} //定义一个函数

​ 对象的访问:

​ 变量名.属性/函数名();

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript">
        var obj=new Object();
        obj.name="脑堵";
        obj.age="6";
        obj.fun=function () {
            alert("姓名:"+this.name+"年龄"+this.age);

        }
        obj.fun();
    </script>
</head>
<body>

</body>
</html>
{}花括号形式的自定义对象

​ var 变量名={ //空对象

​ 属性值:值, //定义一个属性

​ 属性值:值, //定义一个属性

​ 函数名:function(){}//定义一个函数

};

​ 对象的访问:

​ 变量名.属性/函数名();

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script type="text/javascript">
    var obj={
        name:"xiye",
        age:18,
        fun:function () {
            alert("姓名:"+this.name+"年龄"+this.age);
        }

    };
    obj.fun();
</script>
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值