আমি আপনাকে কলব্যাক ব্যবহারের জন্য একটি খুব সাধারণ নোড.জেএস স্টাইলের উদাহরণ দিই:
/**
* Function expects these arguments:
* 2 numbers and a callback function(err, result)
*/
var myTest = function(arg1, arg2, callback) {
if (typeof arg1 !== "number") {
return callback('Arg 1 is not a number!', null); // Args: 1)Error, 2)No result
}
if (typeof arg2 !== "number") {
return callback('Arg 2 is not a number!', null); // Args: 1)Error, 2)No result
}
if (arg1 === arg2) {
// Do somethign complex here..
callback(null, 'Actions ended, arg1 was equal to arg2'); // Args: 1)No error, 2)Result
} else if (arg1 > arg2) {
// Do somethign complex here..
callback(null, 'Actions ended, arg1 was > from arg2'); // Args: 1)No error, 2)Result
} else {
// Do somethign else complex here..
callback(null, 'Actions ended, arg1 was < from arg2'); // Args: 1)No error, 2)Result
}
};
/**
* Call it this way:
* Third argument is an anonymous function with 2 args for error and result
*/
myTest(3, 6, function(err, result) {
var resultElement = document.getElementById("my_result");
if (err) {
resultElement.innerHTML = 'Error! ' + err;
resultElement.style.color = "red";
//throw err; // if you want
} else {
resultElement.innerHTML = 'Result: ' + result;
resultElement.style.color = "green";
}
});
এবং এইচটিএমএল যা ফলাফল রেন্ডার করবে:
<div id="my_result">
Result will come here!
</div>
আপনি এটির সাথে এখানে খেলতে পারেন: https://jsfiddle.net/q8gnvcts/ - উদাহরণস্বরূপ সংখ্যার পরিবর্তে স্ট্রিং পাস করার চেষ্টা করুন: মাই টেস্ট ('কিছু স্ট্রিং', 6, ফাংশন (ত্রুটি, ফলাফল) .. এবং ফলাফল দেখুন।
আমি আশা করি এই উদাহরণটি সহায়তা করবে কারণ এটি কলব্যাক ফাংশনগুলির খুব প্রাথমিক ধারণা উপস্থাপন করে।