javaScript的函数与对象

240 阅读1分钟

1.函数的argument属性

当我们不确定有多少个参数传递的时候,可以用 arguments 来获取。在 JavaScript 中,arguments 实际上 它是当前函数的一个内置对象。所有函数都内置了一个 arguments 对象,arguments 对象中存储了传递的 所有实参。

arguments展示形式是一个伪数组,因此可以进行遍历。伪数组具有以下特点:

1 具有 length 属性;

2 按索引方式储存数据;

3不具有数组的 push , pop 等方法;

function maxValue() {

        var max = arguments[0];

        for (var i = 0i < arguments.lengthi++) {

            if (max < arguments[i]) {

                max = arguments[i];

            }

        }

        return max;

    }

    console.log(maxValue(42253));   //22

console.log(maxValue(155910))   //15

2.预解析

var num = 10;

    fun();

 

    function fun() {

        console.log(num);   //输出undifine

 

        var num = 20;

    }

 

    //相当于执行了以下步骤:

    // 1.变量和函数提升到当前作用域最前面

    // var num;

 

    // function fun() {

    //     var num;

    //     console.log(num);  输出undifine

    //     num = 20;

    // }

    // num = 10;

    // fun();

3.局部作用域与全局作用域

    f1();

    console.log(c);//输出9

    console.log(b);//输出9

    console.log(a);//输出undifine

 

    function f1() {

        var a = b = c = 9;

        //相当与var a=9;b=9;c=9;b和c直接赋值 没有var声明,相当于全局变量

        //集体声明为 :var a=9,b=9,c=9;

        console.log(a);//输出9

        console.log(b);//输出9

        console.log(c);//输出9

JavaScript 中的对象分为3种:自定义对象 、内置对象、 浏览器对象

前面两种对象是JS基础内容,属于 ECMAScript,第三个浏览器对象属于JS 独有的。 内置对象就是指 JS 语言自带的一些对象,这些对象供开发者使用,并提供了一些常用的或是最基本而必要的功能(属性和方法) 内置对象最大的优点就是帮助我们快速开发 l JavaScript 提供了多个内置对象:Math Date 、Array、String

4.创建对象的3种方法

1利用字面量创建对象

var doge = {
        name: 'keke',

        age: 5,

        type: '阿拉斯加犬',

        bark: function() {

            alert('大家好啊~')

        },

        showFilm: function() {

            alert('演电影~');

        }

    };

    console.log(doge.name);

2. 利用new Object创建对象

Object():首字母大写

     new Object() :需要 new 关键字

     使用的格式:对象.属性 = 值; 

    var nalodo = new Object();

    nalodo.name = '鸣人';

    nalodo.age = 19;

    nalodo.sex = '男';

    nalodo.skill = function() {

        alert('影分身之术');

    }

    console.log(nalodo.name);

3.利用构造函数创建对象

    

function Person(name, age, sex) {

        this.name = name;

        this.age = age;

        this.sex = sex;

        this.fun = function() {

            alert('我的名字叫:' + this.name + ',年龄:' + this.age + ',性别:' + this.sex);

        }

    }

    var zhang = new Person('张三', 19, '男');

    var li = new Person('李四', 21, '男');

    console.log(zhang.name);

    console.log(li.name)

    console.log(li.fun());