javascript - সাব অ্যারেতে আইটেম পান এবং মূল অ্যারেতে ফিরুন




arrays (5)

Array.prototype.reduce() ব্যবহার করুন

var array_demo = [
    ['1st', '1595', '8886'],
    ['2nd', '1112']
]

var reduced_array = array_demo.reduce((reducedArray, elem) => {
  elem.shift() // Remove the first item
  return reducedArray.concat(elem)
}, [])

console.log(reduced_array)

সাব অ্যারেতে আইটেম পেলে এবং জাভাস্ক্রিপ্ট দ্বারা মূল অ্যারেতে ফিরলে আমার একটি সমস্যা আছে। আমি এই জাতীয় অ্যারে আছে:

var array_demo = [
    ['1st', '1595', '8886'],
    ['2nd', '1112']
]

আমি এর মতো ফলাফল পেতে চাই: ['1595','8886','1112']

তবে আমি যখন এই কোডটি ব্যবহার করি:

array_demo.map(function(i) {
    return i.slice(1).join();
});

ফলাফল: ['1595,8886', '1112']

কেউ আমাকে সাহায্য করতে পারেন ?


অ্যারে_ডেমো.রেডস ((acc, অ্যারে_এলিমেন্ট) => acc.concat (অ্যারে_ইলেটমেন্ট.স্লাইস (1)), [])


আপনি array.reduce ব্যবহার করতে পারেন এবং এটি নীচে ব্যবহার করতে পারেন:

array_demo.reduce( function(prev, curr, index) {
  return prev.concat(curr.slice(1)); 
} ).slice(1);

জিনিসটি অ্যারে.ম্যাপ, অ্যারের প্রতিটি উপাদানগুলির জন্য ফলাফল প্রদান করে returns সুতরাং, আপনার উদাহরণে এটির দুটি চক্র রয়েছে:

  1. ['1 ম', '1595', '8886'] -> '1595,8886' ফেরত দেয় কারণ আপনি যোগদান করেছেন ()
  2. ['২ য়', '1112'] -> '1112' ফেরত দেয় কারণ আপনি যোগদানের ব্যবহার করেছেন ()

এবং আপনি এটি একটি অ্যারেতে পেয়েছেন -> ['1515,8886', '1112']।


আপনি অ্যারের গঠন করতে পারেন এবং প্রথম উপাদান ছাড়াই বিশ্রাম নিতে পারেন এবং Array.flatMap ব্যবহার করে এই অ্যারে সমতল করতে Array.flatMap

var array = [['1st', '1595', '8886'], ['2nd', '1112']],
    result = array.flatMap(([_, ...a]) => a);

console.log(result);

বিকল্পভাবে Array.slice() পাশাপাশি কাজ করে।

var array = [['1st', '1595', '8886'], ['2nd', '1112']],
    result = array.flatMap(a => a.slice(1));

console.log(result);


join() পরিবর্তে Array.prototype.flat() map() ফিরে আসা Array.prototype.flat() join() ব্যবহার করুন:

var array_demo = [
    ['1st', '1595', '8886'],
    ['2nd', '1112']
]
array_demo = array_demo.map(function(i) {
    return i.slice(1);
}).flat();
console.log(array_demo);

একটি লাইনে তীর ফাংশন (=>) ব্যবহার করে:

var array_demo = [
    ['1st', '1595', '8886'],
    ['2nd', '1112']
]
array_demo = array_demo.map(i => i.slice(1)).flat();
console.log(array_demo);







arrays