আমার কাছে যদি স্ট্রিংগুলির একটি অ্যারে থাকে, তবে আমি .join()
একক স্ট্রিং পেতে পদ্ধতিটি ব্যবহার করতে পারি , প্রতিটি উপাদানকে কমা দ্বারা পৃথক করা যেমন:
["Joe", "Kevin", "Peter"].join(", ") // => "Joe, Kevin, Peter"
আমার কাছে অবজেক্টগুলির একটি অ্যারে রয়েছে এবং আমি এর মধ্যে থাকা একটি মানকে নিয়ে একই রকম ক্রিয়াকলাপ করতে চাই; তাই থেকে
[
{name: "Joe", age: 22},
{name: "Kevin", age: 24},
{name: "Peter", age: 21}
]
আগের মতো একই আউটপুট অর্জনের জন্য join
কেবল গুণকেই পদ্ধতিটি সম্পাদন করুন name
।
বর্তমানে আমি নিম্নলিখিত ফাংশন আছে:
function joinObj(a, attr){
var out = [];
for (var i = 0; i < a.length; i++){
out.push(a[i][attr]);
}
return out.join(", ");
}
এই কোডটিতে কোনও ভুল নেই, এটি কাজ করে, তবে হঠাৎ করেই আমি কোডের একটি সহজ, সংযোগকারী রেখাটি থেকে একটি অতি আবশ্যক ফাংশনে চলে গিয়েছি। এটি লেখার আরও একটি সংক্ষিপ্ত, আদর্শভাবে আরও কার্যকর পদ্ধতি আছে?
users.map(x => x.name).join(', ');
।
" ,".join([i.name for i in a])