(function(){})()的用法与优点
在google的ad的js里面,发现有类似这样的语句
//我用alert("test")代替里面的语句
(function(){alert("test")})()
测试了一下,类似直接执行
alert("test")
那这个用法是有什么好处么?希望大家说一下啊!
function xx(){...}
相当于
var xx;
xx=function(){...}
function(){....}返回一个Function对象
(Function对象)()就是调用该函数了
直观的好处是把几条需要顺序执行的语句组织成一个单元,使逻辑清晰,又不用为它取名字
可能出于节约的考虑:该匿名函数像一个临时变量,执行后可以被立即销毁,当然连同其中的局部变量
相关推荐
-
(function(){})()的用法与优点
在google的ad的js里面,发现有类似这样的语句 //我用alert("test")代替里面的语句 (function(){alert("test")})() 测试了一下,类似直接执行 alert("test") 那这个用法是有什么好处么?希望大家说一下啊! function xx(){...} 相当于 var xx; xx=function(){...} function(){....}返回一个Function对象 (Function对象)
-
python3新特性函数注释Function Annotations用法分析
本文分析了python3新特性函数注释Function Annotations用法.分享给大家供大家参考,具体如下: Python 3.X新增加了一个特性(Feature),叫作函数注释 Function Annotations 它的用途虽然不是语法级别的硬性要求,但是顾名思义,它可做为函数额外的注释来用. Python中普通的函数定义如下: def func(a, b, c): return a + b + c >>> func(1, 2, 3) 6 添加了函数注释的函数会变成如下形式
-
JAVA8之函数式编程Function接口用法
从这章开始,会介绍几个常用的函数式接口工具,首先先来看下这个大家族: 首先从Function接口开始介绍 一. 概述 该接口顾名思义,函数的意思,就像是数学,是给定一个参数然后返回结果.该类方法如下: package java.util.function; import java.util.Objects; @FunctionalInterface public interface Function<T, R> { R apply(T t); default <V> Functio
-
C++ std::function的用法详解
类模版std::function是一种通用.多态的函数封装.std::function的实例可以对任何可以调用的目标实体进行存储.复制.和调用操作,这些目标实体包括普通函数.Lambda表达式.函数指针.以及其它函数对象等.std::function对象是对C++中现有的可调用实体的一种类型安全的包裹(我们知道像函数指针这类可调用实体,是类型不安全的). 通常std::function是一个函数对象类,它包装其它任意的函数对象,被包装的函数对象具有类型为T1, -,TN的N个参数,并且返回一个可
-
php学习之function的用法
1,申明函数 在PHP中,定义函数的方法同其他编程语言几乎一样.下面是PHP申明函数的语法结构: 复制代码 代码如下: Function function_name($argument1,$argument2,$argument3,......$argumentn) { //函数代码code Return 返回值; } 以上语法结构中,关键字的含义如下. (1)function:用于申明用户自定义函数的关键字. (2)function_name:要创建的函数名称.该名称将在以后被调用时使用.函数
-
C++11中std::function与std::bind的用法实例
目录 关于std::function 的用法: 关于std::bind 的用法: 附:std::function与std::bind双剑合璧 总结 关于std::function 的用法: 其实就可以理解成函数指针 1. 保存自由函数 void printA(int a) { cout<<a<<endl; } std::function<void(int a)> func; func = printA; func(2); 保存lambda表达式 std::functio
-
15分钟深入了解JS继承分类、原理与用法
本文全面讲述了JS继承分类.原理与用法.分享给大家供大家参考,具体如下: 许多 OO 语言都支持两种继承方式:接口继承和实现继承.接口继承只继承方法签名,而实现继承则继承实际的方法.由于 ECMAScript 中的函数没有签名,所以在 JS 中无法实现接口继承.ECMAScript 只支持实现继承,而且其实现继承主要是依靠原型链来实现的.所以,下面所要说的原型链继承.借用构造函数继承.组合继承.原型式继承.寄生式继承和寄生组合式继承都属于实现继承. 最后的最后,我会解释 ES6 中的 exten
-
详解vue过滤器在v2.0版本用法
1.x写法 <body> <div id="app"> {{html|uppercase}} </div> <script> new Vue({ el:'#app', data:{ msg:"123", html:"abc" } }) </script> </body> 但是2.0中已经废弃了过滤器,需要我们自定义 <div id="app">
-
浅析AngularJS Filter用法
系统的学习了一下angularjs,发现angularjs的有些思想根php的模块smarty很像,例如数据绑定,filter.如果对smarty比较熟悉的话,学习angularjs会比较容易一点,这篇文章给大家介绍angularjs filter用法详解,感兴趣的朋友一起学习吧 Filter简介 Filter是用来格式化数据用的. Filter的基本原型( '|' 类似于Linux中的管道模式): 复制代码 代码如下: {{ expression | filter }} Filter可以被链式
-
C++ std::function详解
目录 一.介绍 二.实例 三.与std::bind的区别 总结 一.介绍 std::function是函数模板类(是一个类).包含在#include <functional> 中.以前没有这个类的时候,我们在想定义一个回调函数指针,非常的麻烦.我们通常这样的定义: typedef void(*ptr)(int,int)// 这里的ptr就是一个函数指针 而使用了std::function这个类的时候,我们可以这样使用,来替换函数指针.例如: std::function<void(int
随机推荐
- Seajs的学习笔记
- angularjs实现多张图片上传并预览功能
- HTTP 错误 500.19- Internal Server Error 错误解决方法
- Android 校验email是否合法实现代码
- Java设计模式之观察者模式(Observer模式)介绍
- Mybatis generator的使用全面解析
- oracle异常(预定义异常,自定义异常)应用介绍
- CodeIgniter中实现泛域名解析
- mysql中max_allowed_packet参数的配置方法(避免大数据写入或者更新失败)
- javascript日期对象格式化为字符串的实现方法
- mysql5的sql文件导入到mysql4的方法
- Python基础学习之常见的内建函数整理
- shell监控脚本 准备工作分享
- javascript下给元素添加事件的方法与代码
- XSL简明教程(2)XSL转换
- React中上传图片到七牛的示例代码
- Linux环境中使用Ext3文件系统
- mongodb+php实现简单的增删改查
- Mysql源码学习笔记 偷窥线程
- jQuery自动添加表单项的方法