मान लीजिए, हमें एक सरणी विधि लिखनी है जो कि defaultArray.prototype.slice() को अधिलेखित कर देती है। आम तौर पर Array.prototype.slice() मेथड में दो तर्क होते हैं, स्टार्ट इंडेक्स और एंड इंडेक्स, और इंडेक्स स्टार्ट से लेकर एंड -1 तक ओरिजिनल एरे का सबएरे देता है।
हम जो करना चाहते हैं वह इस स्लाइस () फ़ंक्शन को बनाना है, ताकि यह इंडेक्स स्टार्ट टूएंड से एक सबएरे लौटाए न कि एंड -1। इसलिए, ऐसा करने के लिए कोड नीचे दिखाया गया है। हम लूप का उपयोग करके सरणी पर पुनरावृति करते हैं जो वास्तव में हमारे पास मौजूद किसी भी सरणी विधियों की तुलना में तेज़ है। फिर आवश्यक सबएरे को वापस करें, अंत में हम Array.prototype.slice() को उस विधि से अधिलेखित कर देते हैं जिसे हमने अभी लिखा है -
उदाहरण
const arr = [5, 5, 34, 43, 43, 76, 78, 3, 23, 1, 65, 87, 9]; const slice = function(start = 0, end = this.length-1){ const part = []; for(let i = start; i <= end; i++){ part.push(this[i]); }; return part; }; Array.prototype.slice = slice; console.log(arr.slice(0, 4)); console.log(arr.slice(5, 8)); console.log(arr.slice());
आउटपुट
कंसोल में आउटपुट होगा -
[ 5, 5, 34, 43, 43 ] [ 76, 78, 3, 23 ] [ 5, 5, 34, 43, 43, 76, 78, 3, 23, 1, 65, 87, 9 ]