在JavaScript中,当执行类似的操作时,如何显示警报(“用户的任何消息”):
window["any"]("message")("for")("user")
这里的窗口是指JavaScript全局对象。
答案 0 :(得分:2)
创建返回函数的函数,您可以将其称为(param)(param2)(param3)
window.any = function(m) {
return function(f){
return function(u) {
alert(m + f + u);
}
}
}
该函数可以自行返回,因此可以进行无限次调用,但是您需要在没有param的情况下调用它来实际显示消息:
any = function(msg){
var message = '';
var chain = function(){
if (arguments.length) {
message += arguments[0] + ' ';
} else {
alert(message);
}
return chain;
}
return chain(msg);
}
用法:
any("Message")("for")("user")();
编辑:
var any = function(message) {
var sentence = '', timeout = null;
var f = function(msg){
window.clearTimeout(timeout);
if (sentence.length) {
sentence += ' ';
}
sentence += msg;
timeout = window.setTimeout(function(){window.alert(sentence);}, 100);
return f;
}
return f(message);
}
用法:
any("Message")("for")("user");