typescript टाइपस्क्रिप्ट-निश्चित लंबाई सरणी<लंबाई> प्रकार?



(1)

जावास्क्रिप्ट सरणी में एक कंस्ट्रक्टर होता है जो सरणी की लंबाई को स्वीकार करता है:

let arr = new Array<number>(3);
console.log(arr); // [undefined × 3]

हालाँकि, यह सिर्फ प्रारंभिक आकार है, इसे बदलने पर कोई प्रतिबंध नहीं है:

arr.push(5);
console.log(arr); // [undefined × 3, 5]

टाइपस्क्रिप्ट में टफल प्रकार होते हैं जो आपको एक सरणी को एक विशिष्ट लंबाई और प्रकारों के साथ परिभाषित करते हैं:

let arr: [number, number, number];

arr = [1, 2, 3]; // ok
arr = [1, 2]; // Type '[number, number]' is not assignable to type '[number, number, number]'
arr = [1, 2, "3"]; // Type '[number, number, string]' is not assignable to type '[number, number, number]'

टाइपस्क्रिप्ट प्रकार के आसपास के मेरे ज्ञान की कमी को प्रदर्शित करने के जोखिम पर - मेरे पास निम्नलिखित प्रश्न हैं।

जब आप किसी सरणी के लिए इस तरह की घोषणा करते हैं ...

position: Array<number>;

... यह आपको मनमानी लंबाई के साथ एक सरणी बनाने देगा। हालाँकि, यदि आप x, y के लिए एक विशिष्ट लंबाई यानी 3 के साथ संख्याओं वाले एक सरणी चाहते हैं, तो z घटक आप एक निश्चित लंबाई सरणी के लिए एक प्रकार बना सकते हैं, ऐसा कुछ?

position: Array<3>

किसी भी मदद या स्पष्टीकरण की सराहना की!





types