位置: 编程技术 - 正文

比较常见的javascript中定义函数的区别(比较常见的电子商务模式)

编辑:rootadmin

推荐整理分享比较常见的javascript中定义函数的区别(比较常见的电子商务模式),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:比较常见的地图,比较常见的英文名字男,比较常见的引起呼吸道中毒的物质,一般是易挥发,日本人的饮食中下列哪些食物是比较常见的,比较常见的英文名字男,比较常见的车标,比较常见的英文名字男,比较常见的病有哪些,内容如对您有帮助,希望把文章链接给更多的朋友!

比较常见的javascript中定义函数的区别主要通过以下三个方面给大家讲解,需要的朋友参考下吧

1:调用关键字function来构造

  如:

2:使用Function()构造函数

  如:

  这行代码创建了一个新函数,该函数和你所熟悉的语法定义的函数基本上时等价的:

  Functino()构造函数可以接受任意多个字符串参数。它的最后一个参数时函数的主体,其中可以包含任何JavaScript语句,语句之间用分号分隔。其他的参数都是用来说明函数要定义的形式参数名的字符串。如果你定义的函数没有参数,那么可以只需给构造函数传递一个字符串(即函数的主体)即可。

  注意,传递给构造函数Function()的参数中没有一个用于说明它要创建的函数名。用Function()构造函数创建的未命名函数有时被成为“匿名函数”。

  你可能非常想知道Function()构造函数的用途是什么。为什么不能只用function语句来定义所有的函数呢?原因是Function()构造函数允许我们动态地建立和编译一个函数,它不会将我们限制在function语句预编译的函数体中。这样做带来的负面影响效应就是每次调用一个函数时,Function()构造函数都要对它进行编译。因此,在循环体中或者在经常使用的函数中,我们不应该频繁地调用这个构造函数。

  使用Function()构造函数的另一个原因是它能够将函数定义为JavaScript表达式的一部分,而不是将其定义一个语句,这种情况下使用它就显得比较的方面,甚至可以说精致。

比较常见的javascript中定义函数的区别(比较常见的电子商务模式)

3:函数直接量

  函数直接量是一个表达式,它可以定义匿名函数。函数直接量的语法和function语句非常相似,只不过它被用作表达式,而不是用作语句,而且也无需指定函数名。下面的三行代码分别使用function()语句、Funciont()构造函数和函数直接量定义了三个基本上相同的函数:

  虽然函数直接量创建的是未命名函数,但是它的语法也规定它可以指定函数名,这在编写调用自身的递归函数时非常有用。

  例如:

  上面的代码定义了一个未命名函数,并对它的引用存储在变量f中。它并没有真正的创建一个名为fact()的函数,只是允许函数体用这个名字来引用自身。但是要注意,JavaScript1.5之前的版本中没有正确实现这种命名的函数直接量。

  函数直接量的用法和用Function()构造函数创建函数的方法非常相似。由于它们都是由JavaScript的表达式创建的,而不是由语句创建的,所以使用它们的方式也就更加灵活,尤其适用于那些只使用一次,而且无需命名的函数。例如,一个使用函数直接量表达式指定的函数可以存储在一个变量中、传递给其他的函数甚至被直接调用:

  和Function()构造函数一样,函数直接量创建的是未命名函数,而且不会自动地将这个函数存储在属性中。但是,比起Function()构造函数来说,函数直接量有一个重要的优点。由Function()构造函数创建的函数的主体必须用一个字符串说明,用这种方式来表达一个长而复杂的函数是狠笨拙的。但是函数直接量的主体使用的却是标准的JavaScript语法。而且函数直接量只被解析一次,而作为字符串传递给Function()构造函数的JavaScript代码则在每次调用构造函数时只需被解析一次和编译一次。

     在JavaScript1.1中,可以使用构造函数Function()来定义函数,在JavaScript1.2和其后的版本中,还可以使用函数直接量来构造函数。你应该注意这两种方法之间的重要差别。

  首先,构造函数Function()允许在运行时动态地创建和编译JavaScript代码。但是函数直接量却是函数结构的一个静态部分,就像function语句一样。

  其次,作为第一个差别的必然结果,每次调用构造函数Function()时都会解析函数体并且创建一个新东汉数对象。如果对构造函数的调用出现在一个循环中,或者出现在一个经常被调用的函数中,这种方法的效率非常低。另一个方面,函数直接量或出现在循环和函数中的嵌套函数不是在每次调用时都被重新编译,而且每当遇到一个函数直接量时也不创建一个新的函数对象。

  Function()构造函数和函数之间量之间的第三点差别是,使用构造函数Function()创建的函数不使用词法作用域,相反的,它们总是被当作顶级函数来编译,就像下面代码所说明的那样:

js中substr,substring,indexOf,lastIndexOf,split,replace的用法详解 indexOf()方法可返回某个指定的字符串值在字符串中首次出现的位置。lastIndexOf()方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定

浅析js中substring和substr的方法 1、substring方法:用于提取字符串中介于两个指定下标之间的字符substring(start,end)开始和结束的位置,从零开始的索引参数描述start必需。一个非负的整数

js中substring和substr两者区别和使用方法 在开始之前,先回顾下js中下标(数组元素/字符串中字符下标):下标总是从0开始计数,例如vararr=[1,2,3];//数组的长度为3,元素下标依次为:0,1,2arr[

标签: 比较常见的电子商务模式

本文链接地址:https://www.jiuchutong.com/biancheng/383701.html 转载请保留说明!

上一篇:详解JavaScript中的Unescape()和String() 函数(javascriptz)

下一篇:js中substr,substring,indexOf,lastIndexOf,split,replace的用法详解

  • 企业所得税能不能删除重新报
  • 前一年的未分配利润属于什么科目
  • 进项抵扣的金额怎么算
  • 退回投资款怎么做账
  • 无形资产有合同约定,怎么摊销?
  • 购买树木计入什么科目
  • 小微企业免交增值税,月末结转到营业外收入吗
  • 年未决算的现金利润怎么算
  • 银行转账结算的方式有哪些
  • 营改增抵减的销项税额是什么意思
  • 跨年度发现的差错
  • 进项转出再差额征收待抵扣
  • 低价股权转让是利空还是利好
  • 虚开增值税发票具体操作是怎样的?
  • 汇算清缴后如何进行调帐处理
  • 项目资本金是什么意思大白话
  • 办公设备发票开票内容
  • 不能抵扣的福利发票要勾选吗为什么
  • 固定资产的摊销额计入什么科目
  • 事业单位开发成本占比
  • 劳务分包简易计税可以抵扣吗
  • 什么人可以领购房补贴怎么领取
  • 商品流通企业代表企业
  • 公司股东认缴资质末到位导致公司破产应承担什么责任
  • 0申报季末资产总额填多少
  • 注销税务登记后多久注销工商登记
  • 自然人是否适用财政部税务总局2022年第15号公告
  • 白条入账会给什么处分
  • 商标公司转让给个人提供什么?
  • 2023年电子发票如何申领
  • 支付中间业务收入怎么算
  • php匹配邮箱
  • mac环境搭建
  • 企业网管出路
  • autorun.exe无法运行
  • 应交消费税影响当期损益吗
  • 内斯塔特点
  • 伊斯塔神
  • 折旧与摊销会计分录
  • 出口抵扣进项的设备免税依据
  • python制作chm
  • 个税系统如何申报个税
  • 应收应付对冲的会计分录
  • 农民工的劳务报酬个人所得税怎么那么高
  • python中assert()函数
  • mongodb的基本操作
  • 详解帝国cms图集大全
  • 受让应收账款的账务处理
  • 营业收入的相关认定
  • 最新版税控盘怎么设置打印机
  • 个人所得税的征收模式为()A分类征收B
  • 产品研发项目管理 系统 国外
  • 基本户收到零余额转款怎么做分录
  • 承租方承担的税费有哪些
  • 汽车装修费计入哪个科目
  • 外币转入账户什么意思
  • 营业外支出科目核算的内容
  • 营业收入要包括什么
  • 长期股权投资权益法初始成本的确定
  • 医院财务核算制度
  • 记账凭证分为哪几类,应具备哪些主要内容
  • mysql数据库优化总结
  • Win10 Mobile Creators预览版14959更新修复内容与已知问题汇总
  • linux 更新系统
  • cocos2d教程
  • Android OpenGL ES(二)----平滑着色
  • node.js视频教程
  • shell入门
  • virtualbox no bootable medium
  • javascript获取css
  • 使用jquery实现的项目
  • nodejs的流处理模块
  • 如何用nodejs搭建服务端
  • 发票 报销期限
  • 跨年的增值税专用发票怎么冲红或者是作废
  • 暖气费政府补贴
  • 纳税信用b级可以贷款多少
  • 房屋契税和维修基金是开发商交还是业主交
  • 国有土地使用权出让和转让条例
  • 铁路土地使用税减免
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设