js立即执行函数

JavaScript 解析字符串中的 JS 执行方法全解析 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> table { padding: 0; 阅读详情

一、什么是立即执行函数

顾名思义,声明一个函数并马上调用这个函数就叫做立即执行函数;也可以说立即执行函数是一种语法,让你的函数在定义以后立即执行;立即执行函数又叫做自执行函数。
在这里插入图片描述

二、立即执行函数的写法

立即执行函数的写法有三种:

( function ( “ 参数 ” ) { " 函数方法 " ; } ) ( “ 给参数传的值 ” )
( function ( " 参数 " ) { “ 函数方法 ” ; } ( " 给参数传的值 " ) )
! function ( " 参数 " ) { " 函数方法 " ; } ( " 给参数传的值 " )  
// ! 可以换作 void 或其他运算符(比如 +,-,= 等,都能起到立即执行的作用)

立即执行函数是很自私的,它的内部可以访问全局变量。但是除了它自身内部,外部是无法访问它的。

function aaa(a,b){
    return sum = a + b;
}
(function bbb(a,b){
    return sum = a + b;
}(1, 2))
console.log(aaa)
console.log(bbb)

上面代码中,是一个普通函数与一个立即执行函数,输出这两个函数会发现:普通函数aaa被全部打印出来,而打印立即执行函数bbb却报错。返回结果:
在这里插入图片描述
立即执行函数相当于一个瓶口朝下的杯子,当定义它的时候,它会倾斜,把杯口露出来,吸收外面的新鲜空气;当它执行完毕,杯口不再外露,紧闭起来,与外界再无关联。

三、使用立即执行函数的好处

通过定义一个匿名函数,创建了一个新的函数作用域,相当于创建了一个“私有”的命名空间,该命名空间的变量和方法,不会破坏污染全局的命名空间。此时若是想访问全局对象,将全局对象以参数形式传进去即可,如jQuery代码结构:

(function (window) {
	// jquery code
})(window);

其中window即是全局对象。作用域隔离非常重要,是一个JS框架必须支持的功能,jQuery被应用在成千上万的JavaScript程序中,必须确保jQuery创建的变量不能和导入他的程序所使用的变量发生冲突。

四、注意点

前面介绍了3种立即执行函数的写法,使用前两种写法的立即执行函数,它们的前一个函数必须要有分号。

举个栗子:

(function (a){
  console.log(a)
})(1)
(function (a){
  console.log(a)
}(2))

ECMAScript规范具有分号自动插入规则,但是在上面代码中,在第一个立即执行函数末尾却不会插入“;”,因此上面代码会被解释为如下形式:

(function (a){
  console.log(a)
})(1)(function (a){
  console.log(a)
}(2));

此时浏览器报错:
在这里插入图片描述
因此,立即执行函数前的一个函数必须要有分号,保险起见,可以直接在立即执行函数的前面添加“;”

;(function (a){
  console.log(a)
})(1);

(function (a){
  console.log(a)
}(2));

五、扩展一道经典的面试题

非匿名自执行函数,函数名只读

看看下面代码输出什么?

var b = 10;
(function b(){
    b = 20
    console.log(window.b)
    console.log(b)
})()

输出:
在这里插入图片描述
再扩展一下:

var b = 10;
(function b(){
    console.log(b)
    b = 5
    console.log(window.b)
    var b = 20
    console.log(b)
})()

输出:
在这里插入图片描述
上面代码中,第一个值undefined,是因为下面有 var b = 20,var声明会提升到function最开头,但赋值发生在最后,function里面的代码等价于:

	var b
	console.log(b)
	b = 5
	console.log(window.b)
	b = 20
	console.log(b)

END

JavaScript立即执行函数报错--立即执行函数原理分析 JavaScript立即执行函数报错 1.’()‘在JavaScript环境中有提升运算符优先级和执行函数的作用如果直接在JavaScript环境中执行‘()’,环境会报出语法错误提示。 2.’()‘运算符出现在语句开始或者运算符后边会被当做函数表达式优先执行;如果’()’运算符出现在其他函数表达式后边则会被当做执行函数的命令运行。 3.简单的立即执行一个函数,先声明再执行。 4.将函数声明... 阅读详情

相关推荐

Open UI5 源代码解析之1504:AdditionalElementsUtils.js

是一个典型的小文件承载大价值模块。它以极少代码实现了两个关键能力:父级语义定位与动态文案生成。前者保障Add动作在正确层级执行,后者保障用户在复杂场景下仍能获得可理解、可预期的交互信息。放在当前项目实现中,它的作用不是锦上添花,而是底层稳定器。没有它,插件层会被迫重复实现上下文计算与文本拼装,导致行为分叉、维护成本上升、国际化质量下降。正因为有这类领域工具模块,RTA才能在复杂企业场景中维持一致性与可扩展性。让运行时添加功能从能运行走向能长期稳定运行,并且在真实业务页面中保持正确、可读、可维护。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 683

立即执行函数

简介

Triumph_light的博客 7316

华为昇腾NPU环境搭建:torch-npu安装避坑指南(附常见错误解决方案)

本文详细解析了在华为昇腾NPU环境中安装torch-npu适配包的全流程与核心要点。从基础环境准备、严格的版本匹配策略,到针对‘RuntimeError: NPU error’、‘ImportError: libxxx.so’等高频错误的深度解析与解决方案,提供了一份实用的避坑指南,旨在帮助开发者高效搭建稳定的PyTorch开发环境。

weixin_29094979的博客 412

JavaScript 2.2 自执行函数与匿名函数

一、自执行函数 创建了一个匿名的函数,并立即执行它,由于外部无法引用它内部的变量,因此在执行完后很快就会被释放。 //无参,除此之外'!'还可以换做'+','—','~' !function (){ document.write("自执行函数"); }() //这样方式也可以 (function (){ document.write("自执行函数"); }() //有参,参数要赋值,参数只能在方法内部访问 !function(x,y,z){ document.

LetsStudy的博客 514

02-Cesium-实现天地图标记

首先天地图申请token,然后Cesium-实现天地图标记详细说明

m0_62785037的博客 1171

斯坦福大学CS224d基础1:线性代数知识

本文为斯坦福CS229的内容,也是CS224d课程的背景数学知识。概括了在机器学习和深度学习中用到的大部分线性代数知识。为了便于大家查漏补缺,这里根据英文版本整理了一个中文版本。

龙心尘 2万+

js立即执行函数_JavaScript立即执行函数

立即执行函数含义:此类函数没有声明,在一次执行过后即释放(适合做初始化工作)。1、针对初始化功能的函数(2、与函数的区别,只有一点,立即执行函数执行完就立马释放// 立即执行函数的返回值形式 立即执行函数的写法1. (function () {}()); w3c 建议使用第一种写法。> 只有表达式才能被执行符合执行. 能被执行符合执行的表达式,这个函数的名字就会被自动忽略。// 能被执...

weixin_39945178的博客 87

MimicKit 人形机器人强化学习全身模仿控制算法使用教程

本文介绍了MimicKit运动模仿算法框架的使用指南。主要内容包括:1)安装IsaacGym和依赖项;2)训练模型命令及参数说明;3)测试模型的方法;4)分布式训练配置;5)使用TensorBoard可视化日志;6)动作数据格式说明。该框架支持DeepMimic、AMP、ASE、ADD等算法,包含PPO、AWR等强化学习算法,适用于物理仿真角色动画控制研究。

机器人控制与仿真应用 1203

js立即执行函数_JavaScript之闭包和立即执行函数

一说起闭包,可能是JS(ES5)初学者比较头疼的地方,比较晦涩难理解。在这里结合编码过程中的实际经验,通过深入浅出描述去讲解下闭包。首先,得先知道闭包的定义,为了便于理解,可以这样思考闭包即一个函数,什么函数呢?就是能访问另一个函数作用域的函数。常用的方式创建闭包的常见方式,就是在一个函数内部创建另一个函数。接着我们从javascript的机制上了解闭包:1、javascript具有自动垃圾回收机...

weixin_39534759的博客 195

Python 爬虫实战:在房天下抓取房产信息,分析房价走势

通过本次 Python 爬虫实战,我们成功地从房天下爬取了房产信息,并进行了存储、处理、分析和可视化展示。在这个过程中,我们不仅掌握了爬虫技术的基本应用,还学会了如何对动态加载的数据进行处理和分析。然而,本次爬虫任务也存在一些局限性,例如仅爬取了部分区域的房产数据,且未对房产的图片和视频内容进行分析。在未来的工作中,我们可以进一步优化爬虫程序,爬取更多区域的房产数据,并深入分析房产的多媒体内容、用户行为模式等,为购房者和房地产从业者提供更有价值的数据支持。

u014481728的博客 1370

深入浅出之CSPBlock模块(YOLO)

YOLO CSPX模块是YOLO系列算法中的一个重要组成部分,它通过跨阶段部分连接的方式减少了计算量,同时保证了模型的准确率。在YOLOv4及后续版本中,CSPX模块被广泛应用于主干网络和Neck结构中,为模型提供了强大的特征提取和融合能力。

浩瀚之水的专栏 6755

JS立即执行函数

创建JS立即执行函数: // 函数声明创建的立即执行函数 (function fa(){alert(1);})(); (function fa(){alert(2);}()); // 匿名函数(属于函数表达式)创建的立即执行函数 (function(){alert(3);})(); (function(){alert(4);}()); // 函数表达式创建的立即执行函数 var fa = function(){alert(5);}(); 运用立即执行函数小练习: (function(){var a = b

Feb_ruary的博客 308

BUCK-BOOST升降压电路Multisim电路仿真分析

本文分析了三极管型BUCK-BOOST升降压开关电源的工作原理。该电路结合了BUCK降压和BOOST升压拓扑,通过控制三极管Q1的高频通断,使电感L1周期性储能和释能,实现输出电压可高于或低于输入电压且极性相反。详细阐述了Q1导通和关断阶段的工作过程,推导了输出电压与占空比的关系式Vo=-D/(1-D)*Vi,并分析了不同占空比下的工作模式(降压、升压)。通过Multisim仿真验证了理论分析,当D=25%时输出降压至1.6V,D=60%时输出升压至7.5V。电路具有升降压灵活、极性反转、效率高等特点,适用

XU157303764的博客 1436

js中立即执行函数会预编译吗_javascript的立即执行函数

在javascript中有引入立即执行函数的概念,那么什么是立即执行函数呢?立即执行函数又是怎么写的呢?立即执行函数与普通函数有什么区别呢?先来看看一般的函数:functiona(){var num = 100;console.log(num);}以上就是javascript中随便定义的最普通的函数,函数一旦被定义,就会一直等着被执行,会一直占用空间。除非等到javascript执行完函数才会被释...

weixin_28833069的博客 268

中文核心:swin transformer 农作物病虫害识别 完整代码数据

中文核心:swin transformer 农作物病虫害识别

941

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Javascript 立即执行函数

MDN所以,我们不需要显式调用这个函数来调用/运行它。它会在调用 JavaScript 文件后立即运行。

专注于图像领域,主要研究内容包括计算机视觉和深度学习,特别是在图像分类、目标检测和图像生成等方面有深入的研究和实践经验。 1万+

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

【JS】Java Script 立即执行函数IIFE

立即执行函数 立即执行函数模式是一种语法,可以让你的函数在定义后立即被执行。 立即执行函数的组成 定义函数 将函数声明转换成表达式:用一对括号包裹住 在括号后面再加上一对括号,让函数立即执行。 //1.写一个函数声明 function (){/*..代码..*/} //2.将函数声明转换成表达式 (function (){/*..代码..*/}) //3.在括号后面再加上一对括号,让函数立即执行 (function (){/*..代码..*/})(); //括号在外面 除了上面这种,立即执行函数还有

weixin_44707049的博客 281

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

JavaScript基础之立即执行函数

在JavaScript中有时候看到一些很神奇的函数比如下面截图: 这种函数只要浏览器加载的时候会自动运行,而需要调用,前面在闭包的时候也说过这种函数,一般将其称之为:立即执行函数。 立即函数的特征: 会自动执行 只会执行一次 立即执行函数格式 立即执行函数一般有格式如下: # 格式一(//W3C 推荐这种写法) (function (){ }()) #格式二 (但是这个才是最常用的方式之一) (function (){ })(); 其实上面还可以看出立即执行

u011863822的博客 1694

JS中的立即执行函数

JS 立即执行函数可以让函数在创建后立即执行,这种模式本质上就是函数表达式(命名的或者匿名的),在创建后立即执行。 1、立即执行函数的写法 立即执行函数通常有下面两种写法: //第一种写法 (function(){ ... })(); //第二种写法 (function(){ ... }()); //错误的写法 function (){ ... }();    //报错: Uncaught SyntaxError: Unexpected token ( 第三种

qq_45272642的博客 7694

Js立即执行函数

Javascript和其他编程语言相比比较随意,所以Javascript代码中充满各种奇葩的写法,有时雾里看花,当然,能理解各型各色的写法也是对javascript语言特性更进一步的深入理解。其中( function(){…} )()和( function (){…} () )是两种javascript立即执行函数的常见写法。 概念理解:函数声明、函数表达式、匿...

小冰的程序员之旅 1839

JS中立即执行函数和闭包的区别

函数声明 规则:必须指定一个函数名字 foo(); function foo() { console.log("函数声明") } 由于函数声明会被提升,所以调用函数可以在之前或之后调用 函数表达式 规则:将函数赋值给一个变量 var foo = function () { console.log("函数表达式") } foo() 由于函数表达式,只会对变量foo进行提升...

刘运召的博客 6827

js立即执行函数_立即执行函数

0 . 定义此类函数没有声明,在一次执行后即释放,适合做初始化工作1. 为什么要用立即执行函数针对初始化功能的函数,一些我们只需执行一次,比如:function (){ ...此处省略一 W 行代码 } 这个时候我们用立即执行函数,好处是执行完以后立即被清空,这个也是 JS 给我们提供的唯一一个会被清空的函数。立即执行形式如下:( function () { } ()) 这个函数除了执行...

weixin_39615741的博客 128

JavaScript中的立即执行函数

JavaScript中立即调用函数表达式(IIFE)是一个在定义时就会立即执行的 JavaScript 函数。 关于 IIFE (Immediately Invoked Function Expression 立即调用函数表达式)可见IIFE(立即调用函数表达式) - 术语表 | MDN

cnds123的专栏 1979

JavaScript 之 立即执行函数

1、定义 ​ 声明一个函数,并立即调用这个函数,此时这个函数就是立即执行函数,简单来说就是定义函数之后立即执行该函数。立即执行函数一般也写成匿名函数的形式,匿名函数写法为 function(){},就是使用function关键字声明一个函数,但是未命名的函数。关于匿名函数有一点要注意的是:匿名函数不能单独使用,否则会报错,至少需要用 () 包裹起来。 2、作用 ​ ① 不需要为函数命名,避免污染全局变量。 ​ ② 创建一个独立作用域,这个作用域里面的变量,外部访问不到,避免变量污染。 ​ ③ 闭包和

weixin_45092437的博客 4474

javascript中立即执行函数

javascript中立即执行函数 直接po图和代码 //------------------- //立即执行函数(第1种写法) (function(){ //立即执行函数中的this指的是window对象 console.log("立即执行函数中的this=" + this); console.log(this.aaa); //结果是undefined console.lo...

一只苟延残喘的卑微蝼蚁 402
上一篇: ES6 class类的理解学习
下一篇: 什么是闭包?闭包的作用及应用场景
hst❀
博客等级 码龄8年 2364粉丝 147原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值