投稿

JavaScript で input 要素の focus イベントを登録する

JavaScript で input 要素の focus イベントを登録するスニペットです。ポイントは addEventListener の第三引数の bool 値です。これは、イベントをキャプチャするタイミングを決定する値で、デフォルトで false(=バブリングフェーズ)になっています。focus イベントはキャプチャフェーズで発生するようですので、true を指定します。

document.addEventListener("focus", function (args) { debugger; }, true);

TypeScript input 要素の入力値を div 要素に反映する

タイトルの通り、input 要素に入力された値を div 要素にも表示する例です。

入力要素:input (id: titleInput, contentInput)
反映対象:div(id: titleArea, contentArea)


TypeScript では、input 要素を HTMLInputElement にキャストすることで value 属性にアクセスすることができます。下の keyup イベントで引数 args から target(input 要素)にアクセスし、この target を HTMLInputElement にキャストしています。


index.ts
var dataModel:DataModel; classDataModel{ private _title:string; get Title():string { returnthis._title; } set Title(newTitle:string) { this._title=newTitle; //notification to UI elementvar elem:HTMLElement=document.getElementById(this._titleSelector); if (elem!==undefined&&elem.tagName=="DIV") { elem.textContent=this._title; } } private _titleSelector:string; get TitleSelector():string { returnthis._titleSelector; } set TitleSelector(titleSelector:string) { this._titleSelector=titleSelector; } constructor() { } } document.addEventListener("DOMContentLoa…

行列の乗算

行列の乗算(掛け算)の備忘録です。

行列が2つ、下記のようにあったとします。

行列1:
a11 a12
a21 a22
a31 a32

行列2:
x11 x12 x13
x21 x22 x23

これらをかけると、結果は 3行 x 3列の行列になります。
結果として得られる階の3行は、行列1からきています。3列は同様に、行列2からきています。

解:
a11x11+a12x21 a11x12+a12x22 a11x13+a12x23
a21x11+a22x21 a21x12+a22x22 a21x13+a22x23
a31x11+a32x21 a31x12+a32x22 a31x13+a32x23

クラウドコンピューティングにおける仮想マシンの構成

クラウドコンピューティングにおいて、仮想マシンの構成は次の3つの階層に分類される。

・仮想マシン
・OS / ミドルウェア
・アプリケーション


仮想マシンはハードウェアに相当する。ミドルウェアは、OS とアプリケーションの仲介役として、OS の機能を拡張するプログラム群である。

コンピュータの5大装置

コンピュータの5大装置は次の5つの分類がある。
制御装置演算装置記憶装置入力装置出力装置

1の制御装置と2の演算装置は、主にプロセッサーと呼ばれる装置で構成されている。
プロセッサーは CPU、GPU、DSP がある。

3の記憶装置には、主記憶装置(=RAM、揮発性)と補助記憶装置(=不揮発性)がある。

4の入力装置には、キーボード、マウス、センサーなどがある。

5の出力装置には、ディスプレイ、スピーカー、プリンターなどがある。

OSI 参照モデルと TCP/IP の対応表

イメージ
OSI 参照モデルと TCP/IP の対応表です。

TCP/IP の第4層、アプリケーション層は、OSI 参照モデルの第4層~第7層までに対応している。
TCP/IP の第1層、ネットワークインターフェース層は、OSI 参照モデルの第1層~第2層に対応している。


線形探索(リニアサーチ)

線形探索(リニアサーチ)は、配列の要素に対して順次比較して対象のデータを検索する。1つずつ順次比較するために、配列の添字を1つずつ増やしていく。

配列のデータに重複がなければ、対象のデータを見つけ出した時点で探索を終えることができる。

配列のデータに重複がある場合、配列の全データに対して探索を行う。

線形探索に要する実行時間は O(n) となる。