我有很多这样的想法:
function addEventsAndStuff() {
// bla bla
}
addEventsAndStuff();
function sendStuffToServer() {
// send stuff
// get HTML in response
// replace DOM
// add events:
addEventsAndStuff();
}
重新添加事件是必要的,因为DOM已更改,因此以前附加的事件已消失。由于它们最初也必须连接(duh),所以它们在一个很好的功能中是干燥的。
这个设置没有什么问题(或者有问题吗?),但是我可以稍微平滑一点吗?我想创建addEventsAndStuff()
函数并立即调用它,这样它看起来就不那么新手了。
下面这两个命令都以语法错误响应:
function addEventsAndStuff() {
alert('oele');
}();
(function addEventsAndStuff() {
alert('oele');
})();
有谁愿意接受吗?
发布于 2014-05-09 00:27:59
有一个很好的简写方法(除了函数的赋值外,不需要声明任何变量):
var func = (function f(a) { console.log(a); return f; })('Blammo')
发布于 2011-06-20 02:11:58
您可能希望创建一个辅助函数,如下所示:
function defineAndRun(name, func) {
window[name] = func;
func();
}
defineAndRun('addEventsAndStuff', function() {
alert('oele');
});
发布于 2018-10-23 19:56:26
使用ES6甚至更简单:
var result = ((a, b) => `${a} ${b}`)('Hello','World')
// result = "Hello World"
var result2 = (a => a*2)(5)
// result2 = 10
var result3 = (concat_two = (a, b) => `${a} ${b}`)('Hello','World')
// result3 = "Hello World"
concat_two("My name", "is Foo")
// "My name is Foo"
https://stackoverflow.com/questions/6404196
复制相似问题