問題タブ [amber-smalltalk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
99 参照

smalltalk - 現在のタイムゾーンを取得する

Pharo または Amber Smalltalk で現在のタイムゾーンを取得するにはどうすればよいですか?

(また、何らかの方法で画像を検査することで、この情報を自分で見つける方法についても興味があります。通常は行われます。ここでは、Smalltalk の初心者です。)

0 投票する
1 に答える
267 参照

json - アンバーとローカルストレージ、asJSON?

Amber (オンライン IDE ) で OrderedCollection を Web ブラウザーの localStorage に保存し、後で取得したいと考えています。

テスト データ オブジェクトの作成

テスト データ オブジェクトを localStorage に保存する

localStorage は、ブラウザーのキーと値のストアです。値は文字列でなければなりません。

保存された値を取り戻す

以下のprintIt

与える

これは JSON 文字列です。

OrderedCollection collを取得するにはどうすればよい ですか?

ブラウザーに組み込まれている JSON パーサーを使用する

プリントの結果は

配列の 3 番目の要素

です

質問

任意の JSON オブジェクト (JavaScript 配列とオブジェクト、OrderedCollection と HashedCollection、Smalltalk の辞書を含む) の Smalltalk 表現を取得するにはどうすればよいですか?

ノート

http://www.json.org

JSON は、次の 2 つの構造で構築されています。

  • 名前と値のペアのコレクション。さまざまな言語で、これはオブジェクト、辞書、ハッシュ テーブル、または連想配列として実現されます。
  • 値の順序付きリスト。多くの言語では、これは配列、リスト、またはシーケンスとして実現されます。
0 投票する
1 に答える
350 参照

smalltalk - bowerで非Amberライブラリを追加するには? (例えばjsの処理)

プロジェクトを開始してamber initからbower install processing --saveprocessing.jsを追加しました。で初期化を行います

このメソッドはインスタンス メソッドによって呼び出され、initializeAmber v0.13 より前のバージョンで機能しました。

Amber 0.13 および 0.14 で Processing.js を初期化するにはどうすればよいですか?

例のコードはこちら

Herbyによる回答後の追加

バージョン 0.13 および 0.14 では、構成ファイルprocessing.amd.jsonを手動でルート ディレクトリに追加する必要があります。libraryname.amd.jsonライブラリのライブラリ ディレクトリにファイルがない場合は、プロジェクトのルート ディレクトリにあるファイルが必要ですlocal.amd.json

libraryname.amd.jsonAmber Smalltalk および Helios からのファイルの例は次のとおりです。

プロジェクト琥珀; ファイル jquery.amd.json

プロジェクト琥珀; ファイル es5-shim.amd.json

プロジェクトヘリオス; ファイル showdown.amd.json

プロジェクト: https://github.com/hhzl/Amber-snapsvg-demo ファイル: snap.svg.amd.json

参考文献

質問

processing.amd.jsonこのライブラリ マッピング ファイルの何が問題になっていますか?

processing.amd.json実行中の変更後grunt devel

0 投票する
2 に答える
369 参照

smalltalk - フォームのすべてのフィールドの値を取得するにはどうすればよいですか?

クライアント側のAmberソリューションに、このようなHTMLフォームがあります

質問

フィールド名をキー、テキスト コンテンツを値として、フィールドの内容を Amber ディクショナリに入れるために、フォームのすべてのフィールドを反復処理するにはどうすればよいですか?

Stephen-Eggermont と MKroenert による回答後の新しいバージョンの質問

フォームのすべてのフィールドのを取得して、フィールド名をキー、テキスト コンテンツを値として Amber ディクショナリに入れるにはどうすればよいですか?

または、フォームを作成して値を取得する慣用的な方法はありますか?

: 読みやすくするために、Amber コードを使用してフォームを作成することもできます。

参考文献

回答後に編集: FileIn コード

MKroenert が提供する回答は正常に機能します

以下は私がテストした彼のコードです。ワークスペースに直接ファイルすることができます

0 投票する
2 に答える
573 参照

dictionary - アソシエーションのコレクションと Smalltalk の辞書の違いは何ですか?

IPrintItの場合、「白」になります。「asDictionary」を削除しても、「白」のままです。辞書には何があり、連想のコレクションには何がありませんか?

0 投票する
1 に答える
157 参照

smalltalk - Pharo Smalltalk - オブジェクトがインスタンス化された後、スーパーを他のインスタンスに割り当てることは可能ですか?

以下の例のクラス階層を持つoneInstanceand secondInstance、 ofSomeClassおよび oneがあるとします。OtherClass

実行時に oneInstance を変更して、「スーパー」メッセージが secondInstance に到達するように送信することは可能ですか?

oneInstance と secondInstanceがマージされ、基本的に oneInstance が 1 つのオブジェクトであるかのように機能し、構造は次のようなものからインスタンス化されたかのように見えます。

super := secondInstance最も簡単なのは、oneInstance に少し割り当ててから元に戻すことができる場合です:D

PS。基本的に、「スーパー」であるため、oneInstance を再クラス化します。これは、oneInstance が Object からサブクラス化され、他の状態ではなく、独自のものであると仮定して、両方の状態を持つ 1 つのオブジェクトです。ほとんどの場合、継承チェーンのデフォルト メソッド ルックアップを有利に使用するためのハックです。私が見つけることができる最も近いものは、オブジェクトのスライスですhttps://en.wikipedia.org/wiki/Object_slicing

別の見方をすると、次のようになります。

secondInstance はメッセージを受信して​​います。これは OtherClass のインスタンスです。すべて問題ありません。受信するメッセージの一部は OtherClass にないため、メソッド ルックアップは継承チェーンを SomethingClass に移動し、次に Object、ProtoObject などに移動し、最後に他のインスタンスに転送する必要があります。このプロセスは完全に透過的でなければなりません。