美文网首页
javascript入门5(0802)

javascript入门5(0802)

作者: LAYoung_f1b8 | 来源:发表于2019-08-03 14:33 被阅读0次

    1.递归函数

     <script>

                // function fun(num){

                //  console.log(num)//3  2  1  0

                //  if(num>0){

                //      fun(num-1);

                //  }

                // }

                // fun(3);//3 2 1 0

                function fun(num){

                    console.log(num)//3  2  1  0

                    if(num>0){

                        fun(num-1);//调用fun函数 

                    }else{

                        console.log('=========');

                    }

                    console.log(num);

                }

                fun(3);//3 2 1 0 ==== 0 1 2 3

                // 实现阶乘

                    function mul(num) {

                        if (num == 1 || num == 0) {

                            return 1;

                        }

                        return num * mul(num - 1);

                    }

                    // 斐波那契算法

                    function feb(n) {

                        if (n == 1 || n == 2) {

                            return 1;

                        }

                        return feb(n - 1) + feb(n - 2);

                    }

            </script>

    2.对象

            <script>

                var obj2 = new Object()

                console.log(obj2)

            </script>

            <script>

                // obj为实例化对象  new关键字  constructor构造函数

                var  obj = new Object();

                console.log(obj)

                // 通过实例化对象obj查看对象原型

                console.log(obj.__proto__);

                // 通过Object查看对象原型

                console.log(Object.prototype);

                // 普通添加方法

                obj.play = function(){

                    console.log('play');

                }

                // 向对象原型内添加方法

                Object.prototype.say = function(){

                    console.log('say')

                }

                var obj1 = new Object();

                // 对象字面量创建的函数也会继承原型上的方法

                var objj = {

                    name: 'huhao'

                }

                console.log(obj1);

                obj1.say();

            </script>

    3.数组

            <script>

                /*

                    数组

                        索引数组----数组的下标为数字,默认从0开始

                        关联数组----数组的下标为字符串

                    js中的数组指的就是索引数组

                 */

                // 数组的定义

                // 方式一: 构造函数

                var arr = new Array();

                console.log(arr);

                console.log(typeof arr);//object

                // 当Array只传入一个参数时,代表定义指定长度的数组

                var arr = new Array(5);

                console.log(arr);

                // 当Array传入多个参数时(两个及两个以上),代表数组内具体的值

                // 数组的下标默认从0开始递增

                var arr = new Array(1,2,3,4,5);

                console.log(arr);// [1, 2, 3, 4, 5]

                // 方式二:变量直接定义

                var arr = [];

                console.log(arr);//[]

                console.log(typeof arr);//object

                // 采用[]定义的数组,不管传入几个参数都代表数组具体的值

                var arr = [5];

                console.log(arr);//[5]

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

                console.log(arr);

                // 获取指定下标的值

                console.log(arr[2]);//3

                // 修改指定下标的值

                arr[1] = 'a';

                console.log(arr);//[1, "a", 3, 4, 5]

                // length数组的长度  length = 下标+1

                console.log(arr.length);//5

                arr[10] = 'a';

                console.log(arr);//[1, "a", 3, 4, 5 , "a"]

                console.log(arr.length);//11

                // 数组下标若未定义值则值为undefined

                console.log(arr[8]);

                var arr = ['a','b','c','d','e','f','g'];

                console.log(arr);// ['a','b','c','d','e','f','g']

                // 删除指定下标的值  delete()  只删除值,保留键

                delete(arr[1]);

                console.log(arr);//["a", empty, "c", "d", "e", "f", "g"]

                console.log(arr[1]);//undefined

            </script>

    4.数组遍历

            <script>

                var arr = ['a','b','c','d','e','f','g','h','i'];

                console.log(arr);//['a','b','c','d','e','f','g','h','i']

                console.log(arr.length);//9

                // 数组的遍历(显示迭代)

                for(var i=0;i<arr.length;i++){

                    console.log(arr[i]);

                }       

            </script>

    5.对象遍历

            <script>

                var obj = {

                    name:'哈哈',

                    age:32,

                    say:function(){

                        console.log('我叫哈哈');

                    }

                }

                console.log(obj)

                console.log(obj.name);

                // for...in遍历

                // 语法  for(var 变量 in 对象){}

                for(var key in obj){

                    console.log(key);//属性名

                    console.log(obj[key])

                }

            </script>

    6.对象所属关系

            <script>

                var arr = new Array();

                var str = new String();

                console.log(typeof arr);//object

                console.log(typeof str);//object

                // instanceof判断对象的所属关系  返回boolean值

                console.log(arr instanceof Array);//true

                console.log(arr instanceof String);//false

                console.log(str instanceof Array);//false

                console.log(str instanceof String);//true

            </script>

    7.boolean原型

            <script>

                var bol = new Boolean();

                console.log(bol)

                var str = new String();

            </script>

    8.时间对象原型

            <script>

                // 获取当前系统本地时间

                var time = new Date('2019/08/05');

                console.log(time);

                // 查看原型

                console.log(time.__proto__);

                // 获取标准时间(默认)

                document.write(time.toString()+'<br>');

                // 获取国际化时间

                document.write(time.toLocaleString()+'<br>');

                // 重点  时间戳  由十三位数字组成  距离1970年1月1日(计算机元年)的毫秒数

                document.write(time.valueOf())

            </script>

    相关文章

      网友评论

          本文标题:javascript入门5(0802)

          本文链接:https://www.haomeiwen.com/subject/dbyjdctx.html