【JavaScript】JavaScript基础(二)

【JavaScript】JavaScript基础(二)


3. ECMAScipt(续)

? g. 数组

  • Javascript语言中的数组,只要通过数绍下标赋值,那么最大的下标值会自动给数组扩容。

    *不赋值不会扩容

    <script type="text/javascript">
    	var arr = [];
    
    	arr[0] = 1;
    	//alert(arr.length);//1
    
    	//javascript语言中的数组,只要通过数绍下标赋值,那么最大的下标值会自动给数组扩容。
    	arr[3] = "abc";
    	//alert(arr.length);//4
    
    	//alert(arr[2]);//undefined
    
    	alert(arr[9]);
    	alert(arr.length);//4
    </script>

? h. 函数

?? ①函数定义的两种方式

  • 第一种:用function关键字定义函数

    • 函数声明:

      function 函数名(形参) {函数体}

    • 函数调用:

      函数名();

    <script type="text/javascript">
        
    	function fun() {	//无参函数
    		alert("无参函数fun()");
    	}
    	fun();
    	
    	function fun2(a, b) {	//无参函数,可以不写变量类型
    		alert("有参函数fun2(a,b)");
    	}
    	fun2(1, 2);
    
    	function fun3(a,b){		//有返回值的函数
    		return a+b;
    	}
    	alert(fun3(1,2));
    	
    </script>
  • 第二种:函数变量

    • 函数声明:

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

    <script type="text/javascript">
    	var fun2 = function(a, b) {
    		alert("有参函数fun2(a,b)");
    	}
    	fun2(1, 2);
    
    	var fun3 = function(a, b) {
    		return a + b;
    	}
    	alert(fun3(1, 2));
    </script>
  • JS不允许函数重载,会直接覆盖上一次的函数定义。

    函数声明和函数调用的形参长度不同没有关系,只要函数名相同就是一个函数


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

  • 参数arguments在function函数中不需要定义,可以直接用来获取所有参数的变量。我们管它叫隐形参数。操作类似数组。

    <script>
        function fun() {
            alert(arguments.length); //参数个数:3个
    
            //函数取值
            for(var i = 0; i < arguments.length; i++) {
                alert(arguments[i]);
            }
        }
        fun(1, "ad", true);
    </script>
    • 例子:传递参数,求和

      <script>
          function sum(){
              var rs=0;
              for(var i=0;i<arguments.length;i++){
                  rs+=arguments[i];
              }
              return rs;
          }
      
          alert(sum(1,2,3,4,5));
      </script>

      【JavaScript】JavaScript基础(二)


? I. JS中的自定义对象

?? ①Object形式的自定义对象

  • 对象的定义:
    ???? var 变量名=new Object( ); //对象实例(空对象)

    ???? 变量名.属性名=值;//定义一个属性。
    ???? 变量名.函数名=function( ){ } //定义一个函数

    对象的访问:

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

    <script>
        var student = new Object();
        student.name = "zs";
        student.study = function() {
            alert(this.name + "正在学习。。");
        }
    
        alert(student.name);
        student.study();
    </script>

    ②{ }花括号形式的自定义对象

  • 对象的定义:

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

    ???? 属性名:值,//定义一个属性

    ???? 属性名:值,//定义一个属性

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

    ???? }

    <script>
        var student = {
            name: "zs",
            age: 18,
            study: function() {
                alert(this.name + "正在学习。。");
            }
        };
    
        alert(student.age);
        student.study();
    </script>

z. 获取元素内容(待删除)

  • 获取元素:

    document.getElementById("id名称");

    *如果id是字符串,一定要加引号;是数值就不用

  • 获取元素里面的值:

    document.getElementById("id名称").value;
  • 例子:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>获取元素</title>
        <script>
            window.onload=function(){
                //获取页面指定位置的元素
                var uEle=document.gerElementById("username");
                //                alert(uEle);

                //获取页面指定位置的元素内容
                var uValue=uEle.value;
                alert(uValue);
            }
        </script>
    </head>
    <body>
        用户名:<input type="text" name="username" id="username" /><br />
        密码:<input type="password" name="password" />
    </body>
</html>
  • 补充:

    • 表单提交:onsubmit

    • 向页面输出内容:

      • 1.操作HTML元素

        document.getElementById("id名称").innerHTML(属性)=".....";
      • 2.向文档输出:

        document.write("...");
      • 3.alert():警告窗输出

      • *1和2的区别:

        1是指定位置;

        2是直接在HTML文档中输出;

相关推荐