首页
学习
活动
专区
圈层
工具
发布

js中(function(){})()的写法用处

以前看到老师写js的单例模式时疑惑为什么要这么写 var singleton = (function () { var privateVariable; function privateFunction...)... } }; }()); 后来查了下资料,js中(function(){…})()立即执行函数写法理解,终于了解了。...function XXX(){}1 2、一种是函数表达式 函数表达式我们经常使用,而函数表达式中的function则不会出现函数提升。而是JS解释器逐行解释,到了这一句才会解释。...fn1(); function fn1(){}//可以正常调用 fn2(); var fn2 = function(){}//无法调用 OK,下面进入正题,对函数表达式加上(),是可以直接调用的 但是如果是对声明式的后部加上...var fn2 = function(){}();//对,就是这样 function fn1(){}();//{}会被忽略 而平常的function(){}则是一种声明式,如果加上()括号后,则会被编译器认为是函数表达式

4.6K00

js 函数function用法

javascript 函数不同于其他的语言,每个函数都是作为一个对象被维护和运行的。通过函数对象的性质,可以很方便的将一个函数赋值给一个变量或者将函数作为参数传递。...在继续讲述之前,先看一下函数的使用语法: 以下是引用片段: function func1(…){…}   var func2=function(…){…};   var func3=function...func4(…){…};   var func5=new Function();    // 1, 方法调用模式 // 当一个函数被保存为对象的一个属性时...,我们称之它为该对象的一个方法,那么this被绑定到该对象上 var myObject={ name : "myObject" , value : 0 , increment : function...var i=0 for (i=0;i<=10;i++) { document.write("The number is " + i + "") } 参考推荐: js

5.6K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Serverless Web Function 实践教程(一):快速部署 Node.js Web 服务

    作为目前广受欢迎的 Web 服务开发语言,Node.js 提供了众多支持 HTTP 场景的相关功能,可以说是为 Web 构建而生。...因此,基于 Node.js,也诞生了多种 Web 服务框架,它们对 Node.js 的内容进行扩展,专注于 Web 服务的直接构建和开发,如 Express、Koa 等,成为了开发 Web 服务的第一首选...云函数 Web Function 的发布,也为开发者带来了 Web 服务上云的全新方案,只需简单修改监听端口,即可将目前流行的 Node.js 框架直接部署上云,享受 Serverless 技术带来的免运维...首先,在确保您的本地已安装 Node.js 运行环境后,安装 Express 框架和 express-generator 脚手架,初始化您的 Express 示例项目; npm install express...部署上云 接下来,我们对已初始化的项目进行简单修改,使其可以通过 Web Function 快速部署,此处项目改造通常分为两步: 修改监听地址与端口,改为 0.0.0.0:9000 新增 scf_bootstrap

    1.5K30

    JS基础测试: a();function a(){console.log(1)}function a(){..}输出是多少?​

    预处理会跳过执行语句,只处理声明语句,同样也是按从上到下按顺序进行的。包括变量和函数在内的所有声明都会在任何代码被执行前首先被处理。...注意1:对于声明并赋值的语句,例如 var a = 1,在预处理阶段会把这句话拆成两句: var a; a = 1; 也就是说,赋值或其他逻辑运算是在执行阶段进行的,在预处理阶段会被忽略。...注意2: (1)函数声明的提升优先于变量声明的提升; (2)重复的var声明会被忽略掉,但是重复的function声明会覆盖掉前面的声明。...2.在预处理阶段,声明的变量的初始值是undefined, 采用function声明的函数的初始内容就是函数体的内容。 3....完成预处理之后,JavaScript代码会从上到下按顺序执行逻辑操作和函数的调用。 参考代码: ? 答案: C. 2

    3.7K20

    JS魔法堂:再次认识Function.prototype.call

    以下是参照规范的伪代码(各浏览器的具体实现均不尽相同) Function.prototype.call = function(thisArg, arg1, arg2, ...) { /*** 注意:...它内部实现的伪代码如下: test.call = function(thisArg, arg1, arg2, ...){ if (!...有了上面的基础那么Function.prototype.call.call就不难理解了。就是以最后一个call函数的thisArg作为Function.prototype.call的this值啦!...[[Call]](Function.prototype.call, test, argList) } // test作为函数的this值 // 注意:入参thisArg的值为Function.prototype.call.call...Function.prototype.call.call的用法确实少见,而且性能不高,本篇仅仅出于学习的目的,只希望再深入了解一下Function.prototype.call的内部原理而已。

    2.3K100

    jQuery(function(){})与(function(){})(jQuery)的区别

    三、总结 jQuery(function(){ });用于存放操作DOM对象的代码,执行其中代码时DOM对象已存在。...(function(){ })(jQuery);用于存放开发插件的代码,执行其中代码时DOM不一定存在,所以直接自动执行DOM操作的代码请小心使用。 补充: (function($){...})...这就定义了一个匿名函数,参数为arg 而调用函数时,是在函数后面写上括号和实参的,由于操作符的优先级,函数本身也需要用括号,即: (function(arg){...})...(param) 这就相当于定义了一个参数为arg的匿名函数,并且将param作为参数来调用这个匿名函数 而(function($){...})...(jQuery)则是一样的,之所以只在形参使用$,是为了不与其他库冲突,所以实参用jQuery ,上述也可以这样写:var fn = function($){....}; fn(jQuery);

    1.3K100

    简单的说下,(function(){...})() 与 (function(){...}()) 有什么区别?

    大周末的写太长了也没人看,标题所提问,其实没有区别, function xxx(){...},这是一个函数,解释器知道了,但并不运行它; xxx(),解释器遇到它就会执行它。...IIFE写法的好处: 1,普通写法代码多,并且定义和执行不在一起; 2,占用命名空间; 不想给某些函数起名,又想让它立即执行,那怎么办呢?...简单啊,将之转化为表达式,加个()呗,变成这样, (function xxx(){console.log('xxx')})(); 那既然都立即执行了,干脆函数名也不要了吧,于是, (function (...因为IIFE搞了一个新的作用域,你的代码碰不到全局对象了。 什么是IIFE? 立即执行函数表达式 IIFE(Immediately-invoked function expression)

    1K60

    前端开发:立即执行函数(function(){}())与(function(){})()的区别

    前言在前端开发过程中,JS中的原理使用知识点是老生常谈,但是有时候在开发中会忽略一些细节和不经意的知识点,尤其是刚入行的新晋开发者更是一知半解,在对JS整体使用的时候会有所遗漏。...那么本篇博文就来分享一下关于在JS中立即执行函数相关的对比使用总结,方便查阅使用。...、JS常见的一个经典知识点,闭包的实现,还有数据私有化的设置。...,然后后面再加括号调用 (function (){ // 函数体... })()需要注意的是:使用小括号包裹是因为浏览器的JS引擎规定要求,如果function放在首行,一概解析成语句,但是在使用立即执行函数的时候需要浏览器的...JS引擎把function解析为一个表达式,所以小括号包裹为的就是解决这个问题的。

    49321

    python的几个function

    购买已经发布一年的小米8,价格已经降到位了,这个时候购买绝对是超值的。开机大小适中,手感不错,做工也很精致,我购买的是蓝色版本,拿在手上可以说是赏心悦目。...以前对于刘海屏的手机无法接受,现在用上了一段时间,感觉已经适应了。屏幕解锁的速度非常快,即便是在夜间,由于有红外面部识别,所以也能够瞬间解锁,这一点非常好。...骁龙845的处理器,搭配8g运行内存,运行速度杠杠的。128g的海量存储,足够容纳我拍摄的诸多风景照片。...最后说说这款手机的拍摄,由于它主摄使用的是索尼imx363,因此成像素质还是不错的,加上后期的软件调校,所以说,无论是在白天光照条件好的情况下,还是在夜间,都能够获得不错的拍照体验。...我对于超广角以及变焦这些功能倒并不是特别在意,因为有些手机摄像头虽然是多了,但其实并非共同成像,只是单镜头在发挥作用,所以它的成像效果和主摄是完全不能比的。总之,很满意。"

    56020

    js写插件教程

    ;我为了方便都写到一个html中了;请把这个script标签中的内容单独写在一个js文件里 //整个插件写在一个立即执行函数里;就是function(){}();函数自执行;保证里面的变量不会与外界互相影响...; //最后面的undefined可不写;最好写了;保证里面再出现的undefined是未定义的意思;不被其他东西赋值; //好了下面是时候展现真正的技术了 //function前的!...号(叹号)或者;(分号)这不是写错了,为了防止那个二货写的js结束没有分号;而可能发生报错 /* ;function(win,doc,$,undefined){ }(window...;不过有时候防止构造器指向Object的情况;你还是装逼写上吧; init:function(){//这里的init;你也可以写成 nimade:function(){ }都没有问题;...;说好的不写一堆堆的function一层层乱套呢 }; }, setColor:function(){

    40.2K10

    Node.js 教程

    简单的说 Node.js 就是运行在服务端的 JavaScript。 Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。...Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。 ---- 谁适合阅读本教程?...如果你是一个前端程序员,你不懂得像PHP、Python或Ruby等动态编程语言,然后你想创建自己的服务,那么Node.js是一个非常好的选择。...Node.js 是运行在服务端的 JavaScript,如果你熟悉Javascript,那么你将会很容易的学会Node.js。...当然,如果你是后端程序员,想部署一些高性能的服务,那么学习Node.js也是一个非常好的选择。 ---- 学习本教程前你需要了解 在继续本教程之前,你应该了解一些基本的计算机编程术语。

    4.4K20
    领券