Javascript 这个有两个背对背圆括号的作业是做什么的?
我不熟悉AppsScript/Javascript,正在努力学习它的功能。作者在书中写道Javascript 这个有两个背对背圆括号的作业是做什么的?,javascript,google-apps-script,Javascript,Google Apps Script,我不熟悉AppsScript/Javascript,正在努力学习它的功能。作者在书中写道 var Content = (function (ns) { ns.makeContent = function (e) { } return ns; }) (Content || {}); 并且能够通过调用内容 function doPost(e) { return Content.makeContent (e); } 具有读取var…=(...) (...);?
var Content = (function (ns) {
ns.makeContent = function (e) {
}
return ns;
}) (Content || {});
并且能够通过调用内容
function doPost(e) {
return Content.makeContent (e);
}
具有读取
var…=(...) (...);代码>?一个函数,看起来像:
(function(){
...
})()
被称为立即调用的函数表达式。因此本质上,它是一个立即运行的函数,而不是等待从其他地方调用的函数。一个类似于:
(function(){
...
})()
被称为立即调用的函数表达式。所以本质上,它是一个立即运行的函数,而不是等待从其他地方调用。这是立即调用函数表达式调用的函数。此(Content |{})
表示使用Content
对象调用的函数(如果存在或传递空对象)
注意:如果变量是用const
关键字声明的,则此代码将给出错误
var内容={
测试:“你好”
}
变量内容=(函数(ns){
ns.makeContent=函数(e){}
返回ns;
})(内容|{});
log(Content)
这是立即调用函数表达式调用的。此(Content |{})
表示使用Content
对象调用的函数(如果存在或传递空对象)
注意:如果变量是用const
关键字声明的,则此代码将给出错误
var内容={
测试:“你好”
}
变量内容=(函数(ns){
ns.makeContent=函数(e){}
返回ns;
})(内容|{});
console.log(Content)
(立即调用函数表达式)(立即调用函数表达式)感谢您的解释!请再跟进一次:行返回ns
做什么?如果仍然对该函数求值,并且在这种情况下该函数所做的一切都是修改现有对象,那么这是否意味着在这种情况下不需要返回ns
?或者函数返回是否需要作为语法的一部分?@Argyllreturn ns
将返回内容
,或者如果内容
未定义,则将返回一个新对象谢谢您的解释!请再跟进一次:行返回ns
做什么?如果仍然对该函数求值,并且在这种情况下该函数所做的一切都是修改现有对象,那么这是否意味着在这种情况下不需要返回ns
?或者函数return是否需要作为语法的一部分?@Argyllreturn ns
将返回内容
,或者如果内容
未定义,则将返回一个新对象