美文网首页
函数类型

函数类型

作者: 米诺zuo | 来源:发表于2018-04-24 22:22 被阅读3次
//1.函数没有重载
//2.函数表达式,函数为匿名函数,没有函数名,使用前必须先定义。
var f1 = function (){
    return 1;
}
//3.函数声明
 //函数声明提升,执行代码前,会先读取函数声明
function add(num){
    return  num+10;
}
function exeadd(somefunction,someargus){
    return somefunction(someargus);
}
var ssadd = exeadd(add,10);
console.log(ssadd);
3.函数内部属性
arguments 和 this 对象
//arguments

function factorial(num) {
    if(num <=1 ){
        return 1;
    }else {
        return num * factorial(num-1);
    }
}
//这个函数与函数名factorial 紧紧耦合在一起
function factorial(num) {
    if(num <=1 ){
        return 1;
    }else {
        return num * arguments.callee(num-1);
    }
}
console.log(factorial(5));  //120
//使用arguments 对象的 callee 属性 指向函数本身,实现解耦合
//严格模式下使用函数表达式的方式
var factorial = (function f(num) {
    if(num <=1 ){
        return 1;
    }else {
        return num * f(num-1);
    }
})
console.log(factorial(5));
//this 对象

//在 全局定义 this指的是 window
window.color = "red";
var o = { color: "blue" };
function sayColor(){
    console.log(this.color);
}
sayColor();            //red
//独立调用
//虽然test()函数被嵌套在obj.foo()函数中,但test()函数是独立调用,而不是方法调用。所以this默认绑定到window
var a = 0;
var obj = {
    a : 2,
    foo:function(){
        function test(){
            console.log(this.a);
        }
        test();
    }
}
obj.foo();//0
4.函数属性和方法
//length 函数的参数个数
//prototype
//call() 传递给函数的参数必须每个列出来
window.color = "red";
var o = { color: "blue" };
function sayColor(){
    console.log(this.color);
}
sayColor();            //red

sayColor.call(this);   //red
sayColor.call(window); //red
sayColor.call(o);      //blue

apply() 传入 this,arguments(或者 array)
function sum(num1, num2){
    return num1 + num2;
}

function callSum(num1, num2){
//return sum.call(this, num1, num2);
    return sum.apply(this,arguments)
}
alert(callSum(10,10));   //20

相关文章

  • Swift5-外行零基础入门_12-函数(下)

    函数 函数类型作为参数类型,函数类型作为返回类型,嵌套函数 函数类型 关于数据类型,我们之前已经介绍过了。现在来回...

  • TypeScript 函数

    TypeScript 函数 函数类型 为函数定义类型 使用这种方式,为函数定义返回的类型 书写函数类型 书写函数类...

  • 函数类型与闭包

    函数类型 函数类型定义:(参数类型1,参数类型2,……)->返回值类型 函数类型是一种引用类型,类似于函数指针。可...

  • Swift探索(七): 闭包

    一:函数类型 每个函数都有种特定的函数类型,函数的类型由函数的参数类型和返回类型组成。 上述代码中 (Double...

  • TypeScript学习-- 函数(1)

    TypeScript 函数(1) tsc greeter.ts 函数类型 为函数定义类型 书写完整函数类型 函数...

  • 四、函数进阶

    一. 高阶函数 参数类型包含函数类型或返回值类型为函数类型的函数为高阶函数。 常见的高阶函数 高阶函数的调用 二....

  • 每天学一点Swift----函数(二)

    三.函数类型 1. Swift的每个函数都有类型的,函数类型由函数的形参列表,返回值类型组成。 2.使用函数类型定...

  • Swift 学习笔记 - 函数与闭包

    函数 使用函数类型 (Using Function Types) 函数类型作为参数类型 (Function Typ...

  • 函数

    普通定义 为函数定义类型 完整的函数类型 函数类型包含两部分:参数类型返回值类型 推断类型 函数定义时,如果赋值语...

  • iOS开发 - 「Swift 学习」Swift 函数(函数类型定

    Swift 函数类型及使用 函数都有特定的函数类型,由函数的参数类型及返回类型组成 函数定义 使用关键字 func...

网友评论

      本文标题:函数类型

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