文章详情页
javascript - 这段js代码是怎么理解?
浏览:129日期:2023-05-17 14:07:32
问题描述
我的疑惑是把这个函数包起来的括号是啥意思,闭包?然后还在方法后面的这个(1)是将参数1带入这个匿名方法?这个小括号的词法是执行的意思还是隔离方法?
问题解答
回答1:立即执行的意思,传入参数1
(function(x){})(1)回答2:
这是一个立即执行函数,立即执行函数构造了一个函数作用域,可以起到隔离的作用,避免污染全局作用域,传入1是传入参数,立即执行函数与可以用于解决闭包问题。但是和闭包并没有直接联系。
回答3:匿名函数没有函数名,无法调用,括号把函数声明括起来,就不再是一个函数声明,而是一个函数表达式。后面加()也就是是立即执行该函数,1是参数,由里面的x来接收。你可以理解为
var foo = function(x){ delete x; return x;};foo(1);
标签:
JavaScript
相关文章:
1. javascript - 移动端一个小效果2. javascript - vue引入样式的问题3. javascript - 怎么实现让 div 里面的 img 元素 中心居中, 如下示例图4. javascript - nodejs调用qiniu的第三方资源抓取,返回401 bad token,为什么5. python - 关于beautifulsoup获取文档内容6. php - mysql 模糊搜索问题7. Mac环境下QT编译MySQL驱动屡次失败?如何?8. 微信开放平台 - ios APP能不能打开微信然后通过微信跳转到指定的URL?9. php - 微信开发验证服务器有效性10. javascript - vue+iview upload传参失败 跨域问题后台已经解决 仍然报403,这是怎么回事啊?
排行榜
![dockerfile - [docker build image失败- npm install]](http://www.haobala.com/attached/image/news/202311/1028105a80.png)