<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>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 動態類型 > 在面向 JVM 平臺的代碼中不支持動態類型 作為一種靜態類型的語言,Kotlin仍然需要與無類型或松散類型的環境(例如JavaScript生態系統)進行互操作。為了方便這些使用場景,語言中有 `dynamic` 類型可用: ```kotlin val dyn: dynamic = …… ``` `dynamic` 類型基本上關閉了 Kotlin 的類型檢測系統: - 該類型的值可以賦值給任何變量或作為參數傳遞到任何位置; - 任何值都可以賦值給 `dynamic` 類型的變量,或者傳遞給一個接受 `dynamic` 作為參數的函數; - `null`-檢測對這些值是禁用的。 `dynamic` 最特別的特性是,我們可以對 `dynamic` 變量調用**任何**屬性或以任意參數調用**任何**函數: ```kotlin dyn.whatever(1, "foo", dyn) // “whatever”在任何地方都沒有定義 dyn.whatever(*arrayOf(1, 2, 3)) ``` 在 JavaScript 平臺上,該代碼將按照原樣編譯:在生成的 JavaScript 代碼中,Kotlin中的 `dyn.whatever(1)` 變為 `dyn.whatever(1)`。 當在 `dynamic` 類型的值上調用 Kotlin 寫的函數時,請記住由Kotlin 到 JavaScript 編譯器執行的名字修飾。你可能需要使用 [@JsName 注解](http://www.kotlincn.net/docs/reference/js-to-kotlin-interop.html#jsname-%E6%B3%A8%E8%A7%A3)為要調用的函數分配明確的名稱。 動態調用總是返回 `dynamic` 作為結果,所以我們可以自由地這樣鏈接調用: ```kotlin dyn.foo().bar.baz() ``` 當我們把一個 lambda 表達式傳給一個動態調用時,它的所有參數默認都是 `dynamic` 類型的: ```kotlin dyn.foo { x -> x.bar() // x 是 dynamic } ``` 使用 `dynamic` 類型值的表達式會按照原樣轉換為 JavaScript,并且不使用 Kotlin 運算符約定。支持以下運算符: * 二元:`+`、 `-`、 `*`、 `/`、 `%`、 `>`、 `<`、 `>=`、 `<=`、 `==`、 `!=`、 `===`、 `!==`、 `&&`、 `||` * 一元 * 前置:`-`、 `+`、 `!` * 前置及后置:`++`、 `--` * 賦值:`+=`、 `-=`、 `*=`、 `/=`、 `%=` * 索引訪問: * 讀:`d[a]`,多于一個參數會出錯 * 寫:`d[a1] = a2`,`[]` 中有多于一個參數會出錯 `in`、 `!in` 以及 `..` 操作對于 `dynamic` 類型的值是禁用的。 更多技術說明請參見[規范文檔](https://github.com/JetBrains/kotlin/blob/master/spec-docs/dynamic-types.md)。
                  <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>

                              哎呀哎呀视频在线观看