मैंने एक स्लाइड देखी है जो Fab, एक node.js ढांचा प्रस्तुत किया है।Node.js पर जावास्क्रिप्ट एफएबी ढांचा
इस JavaScript है?
कोई बता सकता है कि उस कोड में क्या चल रहा है?
मैं सब खो गया हूं।
मैंने एक स्लाइड देखी है जो Fab, एक node.js ढांचा प्रस्तुत किया है।Node.js पर जावास्क्रिप्ट एफएबी ढांचा
इस JavaScript है?
कोई बता सकता है कि उस कोड में क्या चल रहा है?
मैं सब खो गया हूं।
सादा जावास्क्रिप्ट है, यह फ़ंक्शन चेनिंग पैटर्न है।
पहली पंक्ति, (fab = require("fab"))
में fab
फ़ंक्शन शामिल है और इसका संदर्भ देता है।
सभी बाद के कोष्ठक फ़ंक्शन कॉल हैं, प्रत्येक फ़ंक्शन आमंत्रण शायद बार-बार एक ही फ़ंक्शन देता है।
पैटर्न शायद इस सरल उदाहरण की तरह दिखता है:
var foo = function (arg) {
// detect what the argument is
if (typeof arg == 'function') {
// do something with arg
console.log('function: '+arg());
} else if (arg instanceof RegExp) {
// arg is a RegExp...
console.log('A RegExp: '+arg);
} else if (typeof arg == "string") {
// arg is a string
console.log('A string: '+arg);
}
return foo; // return a reference to itself
};
(foo)
(function() { return "Foo "; })
(/bar/)
(" baz!");
आउटपुट:
function: Foo A RegExp: /bar/ A string: baz!
मुझे लगता है कि हम अपने जवाब को संयोजित करना चाहिए ... – Harmen
@ Harmen..do कि। आप केवल एक क्रेडिट देना नहीं चाहते हैं =) –
कि वास्तव में पालन करने के लिए मुश्किल है; यह वास्तव में जावास्क्रिप्ट की तरह दिखता नहीं है ...
वैसे भी, एफएबी को उस समारोह में एक सूचक लौटने का लाभ मिलता है जिसे बुलाया गया था। उदाहरण के लिए:।
function doSomething(){
if(arguments.length == 1){
alert(arguments[0])
}
else if(arguments.length == 2){
alert(arguments[0] + arguments[1]);
}
return arguments.callee;
}
doSomething
("Hi, 3 + 4 is:")
(3, 4);
पिछले उदाहरण अलर्ट:
function doSomething(str){
alert(str);
return arguments.callee;
}
// Alerts 'hi' and then 'there'
doSomething('hi')('there');
बेशक आप तर्क की संख्या की गणना या में पारित तर्क का प्रकार की जाँच की तरह अतिरिक्त शर्तों को लागू कर सकते हैं, उदाहरण के लिए
> Hi, 3 + 4 is:
> 7
http://blip.tv/jsconfeu/jed-schmidt-getting-functional-with-fab-4399811 – clyfe