`

js三种声明方式

 
阅读更多

JS中声明函数大体上有三种方法: 
1.常规方法 
JScript code function funcName(var1,var2....){ //add you code here } 

2.匿名函数引用法(找不到具体的称呼,暂且先这么叫) 
JScript code var funcName=function(var1,var2...){ //add you code here } 

3.构造函数法 
JScript code var funcName=new Function("x","y","alert(x+y);"); 

3中方法对函数的执行没有区别只是语法上和函数初始化的时候有些区别,通过如下实验 
可以看出他们的区别 

JScript code alert(fn1); alert(fn2); alert(fn3); function fn1(){ alert("fn1"); } var fn2=function(){ alert("fn2"); } var fn3=new Function("alert('fn3');"); fn1(); fn2(); fn3(); 
可以看到只有fn1被输出了函数体代码,其他两个都是undefined。因为JS的执行分为两个阶段 
预处理阶段和执行阶段,预处理阶段会对代码进行扫描分析并初始化变量表。通过第一种方法 
声明的函数在预处理阶段就会被初始化,而其他两种只有在执行阶段执行到相应行是才会被初始化

分享到:
评论

相关推荐

    JS 函数的三种声明方式

    NULL 博文链接:https://onestopweb.iteye.com/blog/2316192

    基于JavaScript 声明全局变量的三种方式详解

    本篇文章对JavaScript中声明全局变量的三种方式进行了详细的分析介绍。需要的朋友参考下

    探讨JavaScript中声明全局变量三种方式的异同

    主要介绍了JavaScript中声明全局变量三种方式的异同。变量及变量声明是一门语言最基本的概念,初学者都会很快掌握。需要的朋友可以过来参考下,希望对大家有所帮助

    JavaScript,简称JS,是一种在Web开发中举足轻重的客户端脚本语言 它最初由Netscape公司的布兰登·艾奇在199

    在JavaScript的语法中,我们可以使用var、let或const来声明变量,其中let是现代的变量声明方式,而var则相对老旧且不再被推荐使用。const声明的变量类似于let,但其值无法被修改。JavaScript拥有八种基本数据类型,...

    JS中不为人知的五种声明Number的方式简要概述

    声明一个数值类型的变量我看到三种;我嘴角微微一笑:少年你还嫩了点,哪止三种,我知道的至少有五种,好奇的你可以参考下哈,希望本文可以帮助到你

    JavaScript的概念、声明、变量、运算符以及流程控制语句的介绍

    JavaScript基础一初识JavaScriptJavaScript的概念实现特点JavaScript的声明第一种声明方式第二种声明方式第三种声明方式第四种声明方式JavaScript的变量变量的概念变量存储数据的六种数据类型基本数据类型引用数据...

    01-Js(javascript)概述

    JS的简单概述,讲了引入JS的方式,三种输出语句,JS的换行、注释、数据类型,JS命名规则, JS变量的声明及赋值

    javascript 使用手册

     第三,两种语言在其浏览器中所执行的方式不一样。Java的源代码在传递到客户端执行之前,必须经过编译,因而客户端上必须具有相应平台上的仿真器或解释器,它可以通过编译器或解释器实现独立于某个特定的平台编译...

    javaScript基础

    2. 在html页面中引用javaScript有三种方式:直接把javaScript代码写在标签script和/script结束标签之间,使用外部javaScript文件或直接把简短的javaScript代码写在html标签中 3. javaScript的核心语法有变量的声明和...

    JavaScript 定义function的三种方式小结

    如: 代码如下: function func() { //body code } (3) 使用JavaScript内置Function对象构造。如: 代码如下: var func = new Function(“/*parameters*/”,”/*body code*/”); 声明变量定义与使用function表达式...

    一款让你的三维可视化项目快速落地开源框架永久开源免费商用 数字孪生三维可视化

    使用 Vue3.x 组件实现声明式的 ThreeJS,做属于前端的三维项目。集成封装项目落地的常用库:图标、多语言、API 接口调用、Vuex/Pinia、model 数据封装、页面 layout/权限 access、路由管理等。旨在解决在国内通过 ...

    JavaScript模拟实现封装的三种方式及写法区别

     JS中有很多实现继承的方法,今天我给大家介绍其中的三种吧。 1.在 Object类上增加一个扩展方法 //声明一个父类 function Person(name){ this.name=name; this.age=age; this.say=function(){ alert(我叫+...

    scrollmeister:开源JavaScript框架以声明方式构建滚动体验

    Scrollmeister是一个开源JavaScript框架,用于声明性地构建滚动体验。 使用自定义元素( <scroll> , 和<shadow> ),您可以创建复杂的交互式滚动页面,而无需一行代码。 您只需要一个HTML编辑器就可以了,甚至可以...

    JS中创建函数的三种方式及区别

    自执行函数严格来说也叫函数表达式,它主要用于创建一个新的作用域,在此作用域内声明的变量,不会和其它作用域内的变量冲突或混淆,大多是以匿名函数方式存在,且立即自动执行。 (function(n1,n2){ cons

    Javascript数组操作高级心得整理

     使用[removed]调用外部的JavaScript(.js文件) 4  如何与老浏览器打交道 4 (2) 把JavaScript代码放到HTML页面不同的位置 4  把JavaScript代码放到HTML<body>部分 4  把JavaScript代码放到HTML<head...

    javascript入门笔记

    调用:在JS中任何的合法位置处,都可以通过 函数名() 的方式进行调用 练习: 1、声明一个函数,名称为 change 2、在函数中 1、通过弹框,分两次,录入两个数字,保存在 a 和 b 2、先打印 a 和 b的值 3、如果...

    JavaScript详解(第2版)

     14.10.5 z索引和三维   14.11 如何与JavaScript融合   14.11.1 什么是DHTML   14.11.2 JavaScript如何操作样式表   14.11.3 style对象   14.11.4 className属性   14.11.5 下拉菜单和提示框  ...

Global site tag (gtag.js) - Google Analytics