<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JS如何定义函数</title>
</head>
<body>
<script>
//定义函数 多种方式

demo(); //函数提升 (特殊情况)
//fn(); //不存在变量提升

//function 关键字方式 def
function demo (a, b) {
console.log('demo');
}

//表达式方式
var fn = function(a, b){
console.log('fn');
}

console.log('')
demo();
fn();

var a = demo;

a();

console.log(typeof demo) //函数也是一种数据类型(对象类型)
console.log(typeof fn)
console.log(typeof fn())

console.log('')

//第三种函数 定义方式 (了解)
var myFun = new Function('a', 'b', 'c', 'console.log("myFun")');

myFun();

</script>
</body>
</html>

js 如何定义函数的更多相关文章

  1. js function定义函数的4种方法

    js function定义函数的4种方法 1.最基本的作为一个本本分分的函数声明使用. 复制代码代码如下: 复制代码代码如下: function func(){} 或 var func=functio ...

  2. js面向对象编程: js类定义函数时prototype和this差别?

    在面向对象编写js脚本时,定义实例方法主要有两种 例如以下: function ListCommon2(afirst) { var first=afirst; this.do1=function () ...

  3. js中类定义函数时用prototype与不用的区别

    转载自:https://blog.csdn.net/yexudengzhidao/article/details/72866047 先看例子 function ListCommon2(first,se ...

  4. js面向对象编程: js类定义函数时prototype和this区别?

    参考文章的链接:http://www.2cto.com/kf/201406/307790.html 测试代码如下: function ListCommon2(afirst) { var first=a ...

  5. JS如何定义方法及调用 精选

    简单搜索了下,遇到点问题1,经常在JS中看到如var foo = function(){}的形式foo是方法名还是对象名,如果想调用此方法,是用foo(),foo.function(),还是该如何正确 ...

  6. JS基础:函数

    函数声明和函数表达式 在 JS 中定义函数的方式有两种:一种是函数声明,一种是函数表达式. 例如: //函数声明 function fun() { ... } //函数表达式 var f = func ...

  7. js两种定义函数、继承方式及区别

    一:js两种定义函数的方式及区别 1:函数声明: function sayA() { alert("i am A"); } 2:函数表达式: var sayB = function ...

  8. JS定义函数的2种方式以及区别简述(为什么推荐第二种方式)

     无意中看到了阮一峰大神多年前的一篇博客: 12种不宜使用的Javascript语法    看到第9条的时候受到了启发,感觉之前没怎么理解清楚的一些问题好像突然就清晰了,如下图 可能光这样看,有些小伙 ...

  9. 简单说明一下JS中的函数声明存在的“先使用,后定义”

    首先看一段JS代码,其中使用了两种方式声明了两个函数,分别在不同的地方调用两个函数: <script> 'use strict'; // 输出hello函数 console.log(hel ...

随机推荐

  1. Java并发编程实战 第10章 避免活跃性危险

    死锁 经典的死锁:哲学家进餐问题.5个哲学家 5个筷子 如果没有哲学家都占了一个筷子 互相等待筷子 陷入死锁 数据库设计系统中一般有死锁检测,通过在表示等待关系的有向图中搜索循环来实现. JVM没有死 ...

  2. windows环境下 RabbitMQ 安装时创建用户流程命令

    https://blog.csdn.net/xiaojieblog/article/details/70332469

  3. 502 bad gateway nginx 的错误的解决方案

    总结 一般是php问题居多,也需要调整相应的nginx参数,最后也可能是mysql假死 nginx问题 查看日志中的报错error.log一般设置路径/usr/local/nginx/logs/ngi ...

  4. SpringMVC POJO入参过程分析

    SpringMVC确定目标方法POJO类型的入参过程 1.确认一个key: (1).若目标方法的POJO类型的参数没有使用@ModelAttribute作为修饰,则key为POJO类名第一个字母的小写 ...

  5. Django 视图层和模板层

    目录 一.网站首页和404页面的路由配置 1. 网站首页路由 2. 404页面 二.Django视图层 1. 小白必会三板斧 (1)HttpResponse (2)render (3)redirect ...

  6. 在centos7.5使用DockerFile构建镜像时报错“Error parsing reference: "microsoft/dotnet:2.2-aspnetcore-runtime AS base" is not a valid repository/tag: invalid reference format”

    运行dockerfile时报出的错误 FROM microsoft/dotnet:2.2-aspnetcore-runtime AS base Error parsing reference: &qu ...

  7. vue导航菜单动态展示

    地址:https://blog.csdn.net/qq_31126175/article/details/81875468      

  8. 【NOIP2014模拟8.25】地砖铺设

    题目 在游戏厅大赚了一笔的Randy 终于赢到了他想要的家具.乘此机会,他想把自己的房间好好整理一 下. 在百货公司,可以买到各种各样正方形的地砖,为了美观起见,Randy 不希望同样颜色的正方形地 ...

  9. tf.expand_dims和tf.squeeze函数

    from http://blog.csdn.net/qq_31780525/article/details/72280284 tf.expand_dims() Function tf.expand_d ...

  10. Linux 系统磁盘空间占满,df 和 du 结果不一致

    服务器运行一段时间后df查看磁盘剩余空间不足,通过du统计发现被几个文件占用,遂删除之.过了一段时间磁盘空间再次不足,通过du统计却找不到那么多大文件.搜索后才得知原因:文件删除后空间没有释放,du统 ...