<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ### **數組** 在ts中,數組的定義方式與js中基本一樣,只是需要為數組指定數據類型 ```javascript // 定義一個只能包含字符項的數組 const array: string[] = ['a','b','c'] // 正確 array.push('d') // 報錯 Argument of type '1' is not assignable to parameter of type 'string'. array.push(1) ``` 除了使用 `string[]` 這種方式定義數組之外,也可以使用`Array`構造函數的方式去定義數組 ```javascript const array1: Array<number> = [1,2,3,4,5] ``` 看了上面的寫法,同學們可能會疑惑,如果數組里面有不同的值,那是不是不能定義呢?這個是可以定義的,不過需要使用到一個新的概念 *聯合類型(后面會講到)*。下面我們定義一個既可以包含字符類型,也可以包含數字類型的數組 ```javascript const array2: Array<string | number> = ['string',12333] const array3: (string | number)[] = ['string', 23222] ``` 數組不僅可以包含基礎類型,也可以包含對象 ```javascript type userInfoType = { sex: number, name: string } const user1: userInfoType = { sex: 1212, name: '姓名' } const array4: userInfoType[] = [user1] ``` ### **元組** 前端同學們可能會對元組這個概念比較模糊,元組可以理解成一種特殊的數組,它具有固定的數組的項個數,而且數組的每一項的類型都是明確指定的,不同項的類型可以不同。 ```javascript type tuple= [string,number,boolean] // 數組共三項,每項的類型必須與元組定的對應起來 const val: tuple = ['string', 12345, true] ``` 在對元組進行賦值的時候,不僅元組每項的類型要保持一致,而且元素個數也要保持一致。對元組修改時,可以通過索引進行修改 ```javascript // 正確 索引對應類型是字符串 val[0] = 'string1' // 報錯 索引對應類型與值不對應 val[1] = '123456' ``` 針對元組每一項,可以調用項類型對應的方法 ```javascript const val1: [string, number] = ['a,b,c' , 123] // 索引0對應的string類型有split方法 const arr1: string[] = val1.split(',') ``` 元組本質上也是數組,所以數組上的操作元組都可以使用,但需要注意的是,如果對數組進行越界操作,越界操作的類型必須包含在元素定義的類型里面 ```javascript const info: [string, number] = ['子君' , 25] // 正確 ,可以push string | number 類型 info.push('男') // 錯誤, Argument of type 'true' is not assignable to parameter of type 'string | number'. info.push(true) ``` 如果對元組索引值進行越界操作,在ts2.6之前與之后是不同的,在ts2.6之前,只要通過索引添加的值包含在元組定義的類型里面都是允許的,但在2.6之后是禁止的 ```javascript const info: [string, number] = ['子君' , 25] // ts 2.6之前 正確 info[2] = '男' // ts 2.6之后 報錯 // Tuple type '[string, number]' of length '2' has no element at index '2'. // Type '"男"' is not assignable to type 'undefined'. info[2] = '男' ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看