উত্তর:
.forEach
ইতিমধ্যে এই ক্ষমতা আছে:
const someArray = [9, 2, 5];
someArray.forEach((value, index) => {
console.log(index); // 0, 1, 2
console.log(value); // 9, 2, 5
});
তবে আপনি যদি এর দক্ষতা চান for...of
তবে আপনি map
সূচীতে অ্যারেটি এবং মানটি করতে পারেন :
for (const { index, value } of someArray.map((value, index) => ({ index, value }))) {
console.log(index); // 0, 1, 2
console.log(value); // 9, 2, 5
}
এটি কিছুটা দীর্ঘ, সুতরাং এটি পুনরায় ব্যবহারযোগ্য ফাংশনে রাখতে সহায়তা করতে পারে:
function toEntries<T>(a: T[]) {
return a.map((value, index) => [index, value] as const);
}
for (const [index, value] of toEntries(someArray)) {
// ..etc..
}
অপরিবর্তনীয় সংস্করণ
ES3 বা ES5 টার্গেট করার সময় এটি কাজ করবে যদি আপনি --downlevelIteration
সংকলক বিকল্পটি সংকলন করেন ।
function* toEntries<T>(values: T[] | IterableIterator<T>) {
let index = 0;
for (const value of values) {
yield [index, value] as const;
index++;
}
}
অ্যারে.প্রোটোটাইপ.এন্ট্রি () - ES6 +
আপনি যদি ES6 + পরিবেশকে টার্গেট করতে সক্ষম হন তবে আপনি আর্ণাভিওনের উত্তরে.entries()
বর্ণিত পদ্ধতিটি ব্যবহার করতে পারেন ।
Array.some()
যে পুনরাবৃত্তি থামাতে চান তা ব্যবহার করতে এবং মিথ্যা ফিরতে পারবেন । এটি প্রায় হিসাবে পরিষ্কার বা সুন্দর হিসাবে break
না এটি কাজ সম্পন্ন হবে। ব্যক্তিগতভাবে আমি এটা পছন্দ করবেন না, আমি সম্ভবত অন্য কোন উপায়ে পুনরাবৃত্তির পুনরায় লিখতে চাই :) দেখতে stackoverflow.com/questions/2641347/...
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/entries
for (var [key, item] of someArray.entries()) { ... }
টিএস-তে এটির জন্য ES2015 লক্ষ্য করা দরকার কারণ এটির পুনরুক্তিগুলি সমর্থন করার জন্য রানটাইম প্রয়োজন , যা ES5 রানটাইমগুলি না করে। আপনি অবশ্যই ইএস 5 রানটাইমগুলিতে আউটপুট কাজ করতে বাবেলের মতো কিছু ব্যবহার করতে পারেন ।
"ওল্ড স্কুল জাভাস্ক্রিপ্ট" উদ্ধার করার জন্য (যারা জানেন না / কার্যকরী প্রোগ্রামিংয়ের প্রেমে আছেন)
for (let i = 0; i < someArray.length ; i++) {
let item = someArray[i];
}
সংগ্রহের সাথে লেনদেন করার সময় আপনি সূচকটি অ্যাক্সেসের জন্য for..in টাইপস্ক্রিপ্ট অপারেটরটি ব্যবহার করতে পারেন ।
var test = [7,8,9];
for (var i in test) {
console.log(i + ': ' + test[i]);
}
আউটপুট:
0: 7
1: 8
2: 9
ডেমো দেখুন
for..in
এটি আপনি প্রত্যাশার চেয়েও বেশি দিতে পারেন কারণ এতে কোনও বস্তুর উপরে ঘোষিত সমস্ত ফাংশনও অন্তর্ভুক্ত রয়েছে। উদাহরণস্বরূপ:for (var prop in window.document) { console.log(prop); }