一:实际上就和我们最为平常的方法是一样的。

function fname(test){ alert(""+test); }

二:通过Function的函数的构造器进行函数对象的定义。

var fname = new Function("test", "alert(''+test);"); 第一个参数实际上是表示要传入函数中的参数,二第二个参数表示的是当前的函数要执行的过程。两个参数实际上都是string类型的。但是又上可以看出实际上当前的内容是十分的繁杂。

三:通过变量只带一块function关键字定义的方法来进行定义。

var fname = function(test){alert(""+test);}

上面的三种方法虽然最后都是声明定义了一个函数,但是也是有区别的。第一种方法实际上是为函数命名为fname,而二三种方法使用起来实际上是把一个匿名函数赋值给一个变量。使用第二种方法来定义函数的时候,实际上就是调用构造函数并在每次解析的时候都会重新读取并创建一新的函数对象,由此可见当在循环体中调用这样的函数的时候会是十分的低效的,还有一点就是,当我们使用其创建一个函数对象的时候,其并不遵循典型的作用域,而是一直作为顶级函数来执行的。意思就是,当在函数内部调用它的时候,其实他并不会用函数内部定义的变量。而是只能使用全局变量。

原文地址:https://www.cnblogs.com/pingchuanxin/p/5722139.html

js中function和Function的区别相关推荐

  1. JS中 let 和var的区别

    JS中let和var 的区别 简单介绍let var的常见变量提升 ES6可以用let定义块级作用域变量 let配合for循环的独特应用 let没有变量提升与暂时性死区 let变量不能重复声明 简单介 ...

  2. uniapp 获取到js文件var一个变量怎么获取到这个变量值_浅析Js中const,let,var的区别及作用域...

    理解:let变量的作用域只能在当前函数中 js中const,let,var的区别及作用域_lianzhang861的博客-CSDN博客​blog.csdn.net 全局作用域中,用 const 和 l ...

  3. js中的extend的用法及其JS中substring与substr的区别

    1.    JS中substring与substr的区别 之前在项目中用到substring方法,因为C#中也有字符串的截取方法Substring方法,当时也没有多想就误以为这两种方法的使用时一样的. ...

  4. js中几个对象的区别和用法

    js中几个对象的区别和用法 今天总结一下js中几个对象的区别和用法: 首先来说说 parent.window与top.window的用法 "window.location.href" ...

  5. js中click()与onclick()的区别

    由一个简单示例到 js中click()与onclick()的区别 之前朋友在学习js的时候遇到一个有意思的问题. 先贴一份代码说一下代码构成 这里是html结构 <ul><li> ...

  6. js中 函数和方法的区别:转载于黑泽君

    js中 函数和方法的区别 在javascript中的解释为: 函数(function)是可以执行的javascript代码块,由javascript程序定义或javascript实现预定义.函数可以带 ...

  7. js中load与onload的区别

    版权声明:本文为博主原创文章,未经博主允许不得转载. 在写交互的时候,加载函数使onload还是load呢? 趁机整理以防遗忘!! js中window.onload(function)等价于jquer ...

  8. Js中的style,currentStyle,getComputedStyle()区别

    Js中的style,currentStyle,getComputedStyle()区别  样式表有三种方式: 1.内嵌样式(inline Style)-是写在Tag里面的,内嵌样式只对所有的Tag有效 ...

  9. js中DOM, DOCUMENT, BOM, WINDOW 区别

    全栈工程师开发手册 (作者:栾鹏) js系列教程6-BOM操作全解 js系列教程7-DOM操作全解 js中DOM, DOCUMENT, BOM, WINDOW 区别 DOM 全称是 Document ...

  10. js中parentNode和parentElement的区别和用法

    了解本篇的基础必须知道什么是节点,关于html dom节点知识点和节点类型的知识,分别看<js节点都有哪些类型?怎么判断是哪种节点类型?>和<js属性节点获取和移除>,下面直接 ...

最新文章

  1. Oculus和虚拟现实的无限可能
  2. jquery easyui 弹出对话框被activex控件遮挡问题
  3. JavaScript中split() 使用方法
  4. 排序方法整理Java - 冒泡排序、选择排序、插入排序、快速排序
  5. mybatis 动态 SQL
  6. 【Findbugs】Findbugs使用指南
  7. C#导入导出.CSV文件
  8. 《自己动手做交互系统》——第2章 音乐蛋糕盘
  9. linux下文件系统管理mkfs及挂载Mount(2)
  10. JavaScript Module Pattern
  11. 那些配置修改之后需要重新启动
  12. fluent p1模型_FLUENT基本物理模型介绍
  13. android view 前景色,Android开发中的一些小技巧
  14. 自定义报表制作的注意事项——思迈特软件Smartbi报表工具
  15. 江苏省普通高校“专转本”选拔考试 计算机专业大类专业综合基础理论考试大纲
  16. C语言复数运算(结构体)
  17. 断网后parsec无法检测发现台式机设备的解决办法
  18. php输出setcookie,PHP函数:setcookie()
  19. Robot 监控服务器资源
  20. 程序员中前10%,我认识的这些老司机是怎么突破年薪百万

热门文章

  1. Maven中如何使用tomcat8的插件
  2. 自动驾驶——未来智能交通的畅想
  3. iTOP3568开发板Android 摄像头测试程序
  4. 从零开始学习TradingView Pine脚本编程
  5. Android代码修改ConstraintLayout约束关系
  6. TimesNet复现
  7. shell脚本学习笔记 (流编辑器sed)
  8. 四阶龙格库塔法的基本思想_请问用四阶龙格库塔法解二阶微分方程的思想是什么?...
  9. 从UE4源代码启动、创建UE4新项目
  10. 间隔一分钟按某个按键一次——VBS脚本