• js第四天学习小结:


    (1)函数的四种形式小结:

    无参无返回值
    function tellstory(){
        console.log("从前有座山");
        console.log("山上有座庙");
    }
    console.log(tellstory());        // 从前有座山 山上有座庙 undefined

    无参有返回值
    function sayHello(){
        return  "Hello";
    }
    console.log(sayHello());         //结果:Hello

    有参无返回值
    function sayHello(name){
       console.log("你好"+name);
    }
    console.log(sayHello("张三"));     //结果:你好张三  undefined
    有参有返回值
    function getMax(a,b){
        if(a>b){
            return a;
        }else{
            return b;
        }
    }
    console.log(getMax(4,6));    //结果:6

    由此来小结一下函数里的return返回值:

    1. 如果函数没有使用 return语句 ,那么函数也是有默认的返回值:undefined ,比如第一种情况tellStory(),以及第三种情况有参无返回值。

    2. 如果函数使用 return语句,那么跟在return后面的值,就成了函数的返回值,第2,4两种情况。

    3. 如果函数使用 return语句,但是return后面没有任何值,那么函数的返回值也是:undefined

    4. 函数使用return语句后,这个函数会在执行完 return 语句之后停止并立即退出,也就是说return后面的所有其他代码都不会再执行。

     

    (2) 所谓的重载就是函数名相同,但是函数的形参个数不同,或者形参的数据类型不同,这样就构成了函数的重载。Js中没有函数的重载。

    <script>

        function getSum(a,b){

            return a+b;

        }

        function getSum(a,b,c){

            return a+b+c;

        }

        console.log(getSum(2,3,4)); //9

        console.log(getSum(2,3))    //因为c没有定义,所以结果是NaN

    </script>

    (3)函数变量的作用域

    在JS是没有块级作用域的。块级作用域,就是一个{}之间包裹的区间。

    全局作用域:

    全局作用域内的变量是可以在任何地方都能访问到的

    1.全局作用域内的变量就是全局变量,在全局作用域内定义的变量是全局变量,可以在页面的任何地方访问的到(包括函数内部)。

    2.在函数内部不使用var定义的变量,也是全局变量。

    局部作用域:一个函数就是一个局部作用域,局部作用域 内的变量称为局部变量。

    (4)内置对象:

    Array的内置对象:

    <script>

        //    toString(),valueOf() ,join(),concat()

    //       var arr1=["abc",123,567];

    //        var arr2=["cde",345,678,890];

    //       console.log(arr1.toString());   //转化为字符串,数组中的各项用逗号隔开,内部调用join

    //       console.log(arr1.valueOf());     //打印对象本身

    //       console.log(arr1.join("|"));     //将字符串数组变成字符串输出,可以在数组添加一些新的字符

    //       console.log(arr1.concat(arr2)); //连接另一个数组,生成一个新数组。

        //    slice()        从当前数组中截取一个新的数组,不影响原来的数组,

           var arr=["123","234","345","456","567","abc","bcd","cde"];

           console.log(arr.slice(3));  //提取从数组下标3开始向后的数组数据

        //                 参数start从0开始,end从1开始

           console.log(arr.slice(2,4));  //提取数组下标3到数组下标4之间的数组数据

        //    splice()     删除或替换当前数组的某些项目,参数

            console.log(arr.splice(2,1));  //删除数组下标为2的数组数据“345”

        //                 start,deleteCount,options(要替换的项目),

        //                 开始位置(下标)删除元素的个数 要替换的元素

           console.log(arr.splice(2,4)); //删除从数组下标2开始往后4个的数组数据。

    </script>

    <script>

        var arr=[1,2,3,4,5,2,6,7];

    //    var num=arr.push("zxc",123,43,54);

    //    console.log(num);

    //    console.log(arr);

        //向数组中添加元素

       // var arr2=arr.pop(); //删除数组的最后一项,返回删除的数据

        //console.log(arr2);

        //console.log(arr);

    //    var arr3=arr.shift();//删除数组中的第一项,返回删除了的数据

    //    console.log(arr3);

    //    console.log(arr);

    //    var arr4=arr.unshift("abc","mmm","999");//从数组前面添加数据,返回添加后数组的长度

    //    console.log(arr4);

    //    console.log(arr);

        console.log(arr.indexOf(2));//从前往后检索,检索到2的值返回数组下标

        console.log(arr.lastIndexOf(2));//从后往前检索,检索到2的值返回数组下标

    </script>

    Math常见的内置对象:

    <script>

        var a=Math.pow(2,10);

        console.log(a);            //1024

        console.log(Math.pow(2,5));       //32      求幂

        console.log(Math.round(5.12));   //5          四舍五入

    console.log(Math.ceil(5.39));   //6            天花板函数向上取整

        console.log(Math.floor(5.39));   //5           地板函数向下取整

        console.log(Math.abs(3));   //3               求绝对值

        console.log(Math.abs(-3)); //3                

        console.log(Math.max(12,11,34));  //34         求最大值

        console.log(Math.min(44,23,12,56));  //12        求最小值

        console.log(Math.random());    //生成一个[0,1)的随机数   

        console.log(Math.PI);      //math之中的一个属性

    </script>

     

    日期对象:

    <script>

        //getTime()  返回毫秒数和valueOf()结果一样

        //getMilliseconds()

        //getSeconds()  返回0-59

        //getMinutes()  返回0-59

        //getHours()   返回0-23

        //getDay()     返回星期几 0周日   6周6  0--6

        //getDate()    返回当前月的第几天,当月的几号

        //getMonth()   返回月份,从0开始

        //getFullYear()   返回4位的年份  如 2016

     

        //    var date=new Date();

    //    console.log(date);

    //    console.log(date.toString());      //返回字符串

    //    console.log(date.valueOf());     //可返回 Boolean 对象的原始值。

     

    //    console.log(date.toDateString()); //把 Date 对象的日期部分转换为字符串,并返回结果。

     

    //    console.log(date.toLocaleDateString());  //可根据本地时间把 Date 对象的日期部分转换为字符串,并返回结果。

     

    //    console.log(date.toTimeString());   //可把 Date 对象的时间部分转换为字符串,并返回结果

     

     

     

     

    </script>

  • 相关阅读:
    ArrayList和HashTable妙用一
    面向过程,面向对象的深入理解一
    jquery中限制部分字段不能输入
    MySql用int存储时间
    android绑定sqlite数据库与程序一起发布
    extjs 4和jquery整合
    jQuery.support 的实现方式
    常用JavaScripts方法
    SVN错误信息大全
    android封装的menu自定义菜单列表
  • 原文地址:https://www.cnblogs.com/xinjianheyi/p/5724291.html
Copyright © 2020-2023  润新知