美文网首页
谈谈JS的函数01(创建方式和函数指针)

谈谈JS的函数01(创建方式和函数指针)

作者: codeSirCao | 来源:发表于2017-06-12 00:51 被阅读125次

序:说起来ECMAScript中最有意思莫过于函数—函数式对象大家都知道而函数都是Function类型的实例 而且都和其他引用类型一样都有属性和方法,对象名字都是一个指针,所以函数名其实就是一个指针(指向这个函数)不会和某个函数绑定

大家有时间的可以看看引用类型技能理解上面的话(其实我也是似懂非懂)

概念:

定义一次 却可以调用执行多次的一段JS代码

创建方式:

1:函数声明(预解析的时候回提前哦)
function sum (num1 num2){//可以传参数是形参
return: num1+num2//每个函数都有的return属性返回值
}

2:函数表达式:
var sum=function (num1 num2){//这其实是一个匿名函数哦
return: num1+num2//每个函数都有的return属性返回值
};//记住有分号哦和申明其他变量一样

3:Function构造函数:
var sum=new Function("num1","num2","return num1+num2")
技术上讲这其实是一个函数表达式 不推荐使用 这个会解析2次 无论怎么样最会一个参数都会被解析成函数体而前面的参数则是新的函数的参数形参。这种方式理解<<函数是对象,函数名是指针>>更加直观(理解构造函数对于这个应该好理解)请看下面的例子:
function num(num1,num2){
return: num1+num2
}
alert(num(10,20))//30 num是指针 num是指针 num是指针 他指向这个函数(这个我也搞了很久才明白记号是指针)
var anotherNum=num
alert(another(20,20)) //40
num=null
alert(anotherNum(30,30)) //60

个人解释:

num是指针赋给anotherNum anotherNum 也成为了一个指针指向函数
当num=null的时候只是num为null 函数被没有变 改的只是num这个指针所以anotherNum只是被赋予一个指针指向函数,函数不会变结果也是同样执行


相关文章

  • 谈谈JS的函数01(创建方式和函数指针)

    序:说起来ECMAScript中最有意思莫过于函数—函数式对象大家都知道而函数都是Function类型的实例 而且...

  • 2020-12-15

    js对象的创建和函数 创建对象 工厂模式 构造函数 原型方式+构造函数

  • JavaScript函数_01创建函数的几种方式

    01创建函数的几种方式 创建函数的几种方式 01 函数声明02 函数表达式03 new Function() ne...

  • js ------ 函数声明和函数表达式

    js创建对象几种方式 js 函数声明 和 函数表达式函数声明 函数表达式 函数表达式: 下面的函数都会直接运行

  • C语言函数指针和指针函数

    C语言函数指针和指针函数 在学习C语言的过程中,“指针函数”和“函数指针”经常容易搞混了, 最简单的辨别方式就是看...

  • c语言中的注册函数、回调函数(callback)以及多态的实现

    一、函数指针 函数指针:指向存放函数空间首地址的指针变量。 函数指针的定义方式为: 函数返回值类型 (* 指针变量...

  • JS对象和继承

    JS 对象创建的三种方式 字面量创建方式 系统内置构造函数方式 自定义构造函数 继承方式 for in 继承 原型...

  • 总结一下js的函数类型

    几个概念 在js中,函数就是个对象 函数名就是个指向函数对象的指针 函数的三种声明方式 函数声明 函数表达式 使用...

  • Day6 js基础2

    01.js引入方式和打印方式 02.函数 03.数组 04.对象 05.常用对象和函数 06.js简单演示 07....

  • 06_JS面向对象

    创建函数的几种方式 函数的构造函数Function 在 js 中 使用Function可以实例化函数对象。也就是说...

网友评论

      本文标题:谈谈JS的函数01(创建方式和函数指针)

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