javascript犀牛书学习笔记(一)函数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yingzhicai/article/details/52604010

函数实际上也是对象。每个函数都是Function类型的实例,而且都和其他引用类型一样具有属性和方法。由于是对象,因此函数实际上也是一个指向行数对象的指针。

使用不带圆括号的函数名是访问函数指针,而非调用函数。

函数声明和函数表达式

作为值得函数

函数名本身就是变量,所以函数也可以作为值来使用。也就是说,不仅可以像传递参数一样把函数传递给另外一个函数,而且可以将一个函数作为另外一个函数的结果返回。

函数是带有名称和参数的JavaScript代码段,可以一次定义多次调用。

函数是一种值,可以赋值给变量

    var square = function (x) {   //函数是一种值,可以赋值给变量
        return x*x;   //计算函数的值
    };   //分号标识了赋值语句的结束
    square(2);

当将函数和对象合在一起时,函数就变成了方法(Method)

当函数赋值给对象的属性,我们称为“方法”,所有的JavaScript对象都含有方法

 //我们也可以定义自己的方法,“this”关键字是对定义方法的对象的引用,下面的例子是上文中提到包含两个点位置信息的数组

    var points = [ //具有两个元素的数组
        {x:0,y:0}, //每个元素都是一个对象
        {x:3,y:4}
    ];

    /**
     * 定义一个方法用来计算两点之间的距离
     */
    points.dist = function () {
        var p1 = this[0];   //通过this对象获得当前数组的引用,取得调用数组的前两个元素
        var p2 = this[1];
        var a = p2.x - p1.x;
        var b = p2.y - p1.y;
        return Math.sqrt(a * a + b * b);  //用Math.sqrt()来计算平方根
    }

    points.dist();

猜你喜欢

转载自blog.csdn.net/yingzhicai/article/details/52604010