আমি সবসময় ভাবতাম যে তাদের মধ্যে পার্থক্য কী। তারা সবাই একই জিনিস করছে বলে মনে হচ্ছে ...
আমি সবসময় ভাবতাম যে তাদের মধ্যে পার্থক্য কী। তারা সবাই একই জিনিস করছে বলে মনে হচ্ছে ...
উত্তর:
পার্থক্যটি ফেরতের মানগুলির মধ্যে।
.map()
আসল আইটেমটিতে কিছু পদক্ষেপ নিয়ে তৈরি করা বস্তুর একটি নতুন অ্যারে প্রদান করে ।
.every()
একটি বুলিয়ান প্রদান করে - সত্য যদি এই অ্যারের প্রতিটি উপাদান সরবরাহিত পরীক্ষামূলক ক্রিয়াকে সন্তুষ্ট করে। এর সাথে একটি গুরুত্বপূর্ণ পার্থক্য .every()
হ'ল পরীক্ষার ফাংশনটি অ্যারেতে প্রতিটি উপাদানগুলির জন্য সর্বদা কল করা যায় না। একবার টেস্টিং ফাংশনটি কোনও উপাদানের জন্য মিথ্যা ফেরত দেয়, আর অ্যারে উপাদানগুলি পুনরাবৃত্তি হয় না। সুতরাং, টেস্টিং ফাংশনটির সাধারণত কোনও পার্শ্ব প্রতিক্রিয়া হওয়া উচিত ।
.forEach()
কিছুই প্রদান করে না - এটি অ্যারের প্রতিটি আইটেমের জন্য প্রদত্ত ক্রিয়া সম্পাদন করে অ্যারেটিকে পুনরাবৃত্তি করে।
এগুলি এবং এমডিএন তে আরও অনেক অ্যারে পুনরাবৃত্তি পদ্ধতি সম্পর্কে পড়ুন ।
গিলি 3 এর উত্তর দুর্দান্ত। আমি অন্যান্য ধরণের "উপাদানগুলির মাধ্যমে লুপ" ফাংশন সম্পর্কে কিছুটা তথ্য যুক্ত করতে চেয়েছিলাম wanted
.every()
(প্রথমবার পুনরাবৃত্তিকারী মিথ্যা বা মিথ্যা কিছু প্রত্যাবর্তন করে লুপিং থামায়).some()
(প্রথমবার পুনরাবৃত্তিকারী সত্য বা সত্যের কিছু প্রত্যাবর্তন বন্ধ করে দেয়).filter()
(ফিল্টার ফাংশনটি সত্য হিসাবে আসে এবং যেখানে এটি মিথ্যা প্রত্যাবর্তন করে সেখানে বাদ দিয়ে এমন উপাদানগুলি সহ একটি নতুন অ্যারে তৈরি করে).map()
(পুনরাবৃত্তকারী ফাংশন দ্বারা ফেরত মানগুলি থেকে একটি নতুন অ্যারে তৈরি করে).reduce()
(পূর্ববর্তী মানগুলিতে পাস করে পুনরাবৃত্তিকারীকে কল করে একটি মান বাড়িয়ে তোলে; বিশদটি সুনির্দিষ্টভাবে দেখুন; অ্যারের সামগ্রী এবং অন্যান্য অনেকগুলি সামগ্রীর সংমিশ্রনের জন্য দরকারী).reduceRight()
(হ্রাস করার মতো, তবে আরোহী ক্রমের পরিবর্তে অবতরণে কাজ করে)ক্রেডিটকে: টিজে ক্রাউডার প্রতিটি জন্য জাভাস্ক্রিপ্টে একটি অ্যারের উপরে?
উপরের দুর্দান্ত উত্তরের আরও একটি বিবেচনা শৃঙ্খলিত হয়। ForEach () দিয়ে আপনি চেইন করতে পারবেন না, তবে মানচিত্র () দিয়ে আপনি পারবেন can
উদাহরণ স্বরূপ:
var arrayNumbers = [3,1,2,4,5];
arrayNumbers.map(function(i) {
return i * 2
}).sort();
.achEach () দিয়ে, আপনি .sort () করতে পারবেন না, আপনি একটি ত্রুটি পাবেন।
জন্য Ramda , মধ্যে পার্থক্য R.map()
এবং R.forEach()
হল:
R.forEach()
আসল অ্যারেটি ফিরিয়ে দেয় যেখানে R.map()
একটি ফান্টর ফেরত দেয়R.forEach()
কেবল অ্যারেতে অপারেট R.map()
করতে পারে তবে কোনও বস্তুতেও কাজ করতে পারে (যেমন, বস্তুর কী / মান জোড়গুলি অ্যারের মতো ধরা হয়)
every
এবংforEach
jQuery এর পদ্ধতি নয়, আমি মনে করি এটি অসম্ভাব্য প্রশ্ন কোন ভাবেই jQuery এর সাথে সম্পর্কিত নয়। বিকাশকারী.মোজিলা.আর.ইন