美文网首页
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