iOSやmacOSアプリのSDKには、JavaScriptCoreフレームワークという、アプリにJavaScriptを処理する機能を簡単に組み込めるライブラリーが標準搭載されています。これを使うとSwiftネイティブコードとJavaScriptコードとを密接に連携して、自由度の高いプログラミングが可能になります。本書ではJavaScriptCoreフレームワークの基礎から、JavaScriptとSwiftの連携についての詳細まで、徹底的に解説します。
【目次】
1. JavaScriptCore
2. 基本的な使い方
3. 変数の扱い方
4. APIを定義する
5. 変数を扱うときの注意
6. 座標や範囲を表す型の扱い
7. 例外処理を使う
8. SwiftでPromiseを使う
9. コードを書きやすくする
10. Promiseを使いやすくする
目次プレビュー
- はじめに
- 1. JavaScriptCore
- 2. 基本的な使い方
-
想定環境
-
免責事項
-
表記関係について
-
底本について
-
4.1. 用意されているAPI
-
4.2. APIの定義方法
-
4.3. 変数をJavaScriptで定義する
-
4.4. 変数をSwiftから提供する
-
4.5. 関数をJavaScriptで定義する
-
4.6. 関数をSwiftから取り込んで提供する
-
4.7. オブジェクトをJavaScriptで定義する
-
4.8. Swiftの型をJavaScriptに直接提供する
-
4.9. SwiftクラスをJavaScriptから生成する
-
5.1. プリミティブ型
-
5.2. 文字列への変換
-
5.3. 真偽値の表現
-
5.4. 真偽値への変換
-
5.5. 桁あふれを伴う数値変換
-
5.6. 数値オブジェクトへの変換
-
5.7. Double型への変換
-
5.8. ネイティブオブジェクトを取得する
-
5.9. 配列型への変換
-
5.10. 辞書型への変換
-
5.11. オブジェクトの扱いに注意
-
5.12. 実行結果の取得失敗談
-
5.13. ネイティブ型に変換できなかったとき
-
5.14. nullを変換したとき
-
5.15. undefinedを変換したとき
-
6.1. JavaScriptオブジェクトとの相互変換
-
6.2. Swiftネイティブオブジェクトでの型
-
6.3. JavaScriptオブジェクトでの型
-
6.4. JavaScript側でNSValue型を扱う方法も
-
6.5. JSValue型にラップして渡すのが自然
-
6.6. JavaScriptで作ってSwiftで取得するとき
-
6.7. JavaScriptでCGSize型を作る
-
7.1. 例外を検出する
-
7.2. 例外の詳細を取得する
-
7.3. 標準的なエラーオブジェクト
-
7.4. JavaScriptから例外を送信する
-
7.5. Swiftから例外を送信する
-
9.1. JavaScriptをファイルから読み込む
-
9.2. CGSize型などを安全に扱う
-
9.3. キーを文字列リテラルで指定する
-
9.4. JSValueの比較をJavaScriptと同じにする
-
9.5. JSValueを大小比較する
-
9.6. 添字構文でオブジェクトを設定する
-
9.7. JavaScriptコードをreturnで終わらせる
-
9.8. setTimeout関数を使う