亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

搜索

元組

類型化數(shù)組

元組是類型化的數(shù)組,具有預(yù)定義長(zhǎng)度,且每個(gè)索引都有對(duì)應(yīng)的類型。

元組非常有用,因?yàn)樗鼈冊(cè)试S數(shù)組中的每個(gè)元素都是已知類型的值。

要定義一個(gè)元組,需要指定數(shù)組中每個(gè)元素的類型:

實(shí)例

// 定義我們的元組
let ourTuple: [number, boolean, string];

// 正確初始化
ourTuple = [5, false, 'Coding God was here'];

如您所見,我們有一個(gè)數(shù)字、一個(gè)布爾值和一個(gè)字符串。但是,如果我們嘗試以錯(cuò)誤的順序設(shè)置它們,會(huì)發(fā)生什么呢:

實(shí)例

// 定義我們的元組 
let ourTuple: [number, boolean, string];

// 初始化不正確會(huì)引發(fā)錯(cuò)誤
ourTuple = [false, 'Coding God was mistaken', 5];

盡管我們有 boolean、stringnumber,但在我們的元組中,順序很重要,否則會(huì)拋出錯(cuò)誤。

只讀元組

一個(gè)好的做法是將您的元組設(shè)置為只讀。

元組只對(duì)初始值有嚴(yán)格定義的類型:

實(shí)例

// 定義我們的元組  
let ourTuple: [number, boolean, string];  
// 正確初始化  
ourTuple = [5, false, 'Coding God was here'];  
// 對(duì)于索引 3+,我們的元組中沒有類型安全性  
ourTuple.push('Something new and wrong');  
console.log(ourTuple);

您會(huì)看到新的元組只對(duì)初始值有嚴(yán)格定義的類型:

實(shí)例

// 定義我們的只讀元組
const ourReadonlyTuple: readonly [number, boolean, string] = [5, true, 'The Real Coding God'];
// 拋出錯(cuò)誤,因?yàn)樗侵蛔x的。
ourReadonlyTuple.push('Coding God took a day off');

要了解有關(guān)只讀等訪問修飾符的更多信息,請(qǐng)轉(zhuǎn)到我們關(guān)于它們的部分:TypeScript 類。

如果您以前使用過 React,那么您很可能已經(jīng)使用過元組。

useState 返回一個(gè)由值和設(shè)置函數(shù)組成的元組。

const [firstName, setFirstName] = useState('Dylan') 是一個(gè)常見的例子。

由于結(jié)構(gòu)原因,我們知道列表中的第一個(gè)值將是某種值類型(在本例中為 string),而第二個(gè)值是 function。

命名元組

命名元組允許我們?yōu)槊總€(gè)索引處的值提供上下文。

實(shí)例

const graph: [x: number, y: number] = [55.2, 41.3];

命名元組允許我們?yōu)槊總€(gè)索引處的值提供上下文。

解構(gòu)元組

由于元組是數(shù)組,因此我們也可以對(duì)它們進(jìn)行解構(gòu)。

實(shí)例

const graph: [number, number] = [55.2, 41.3];
const [x, y] = graph;

要回顧解構(gòu),請(qǐng)單擊此處。