感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

「何度も何度も何度も失敗してきた。だから俺は成功するんだ」 マイケル・ジョーダン

スポンサーリンク

ことば

I've missed more than 9000 shots in my carrer.
I've lost almost 300 games.
I've failed over and over and over again in my life.
That is why I succeed.

Michel Jordan
いままでにミスしたシュート9000本。
負けゲーム300回。ずっとミスをしてきた。
何度も、何度も、何度も。
だから俺は成功するんだ。
世界一わかりやすい英文法の授業

JavaScript DOM

■ノートの追加・更新
・ノードの生成・表示
①要素ノード、属性ノード、テキストノード等をノード生成メソッドで生成する
②ノードの追加メソッドにより生成ノード間で親子関係付けを行う
③②で生成されたノード構成を、root以下の既存ノードの子ノードとして追加する。

・主要メソッド一覧

createTextNode テキストノードの生成
書式 object.createTextNode(text)
機能 引数で指定されたテキストノードを生成する
引数 作成するテキスト
返り値 TextNodeオブジェクト
appendChild ノードの追加
書式 object.appendChild(newChild)
機能 要素オブジェクトに引数で指定されたオブジェクトを追加する
引数 追加する子ノードオブジェクト
返り値 ノードオブジェクト
createElement 要素ノードの生成
書式 object.createElement(element)
機能 引数で指定したエレメントを生成する
引数 要素の名前
返り値 作成したオブジェクト
setAttribute 属性ノードの追加
書式 object.setAttribute('attributeName', 'value', ['type'])
機能 オブジェクトに引数で指定された属性を追加する。
引数 attributeNameはアトリビュート名を指定。valueは値を指定。typeは種類を指定する。
返り値 なし

[type]
0:アトリビュート名の大文字小文字を区別しない
1:アトリビュート名の大文字小文字を区別する

新しくノードを追加するJavaScriptサンプル

function domFunc() {
	var userInfo = document.getElementById("userInfo");
	var userName = document.createTextNode(" ユーザー名");
	empInfo.appendChild(userName);
	var nameInput = document.createElement("input");
	nameInput.setAttribute("type", "text");
	nameInput.setAttribute("size", "14");
	nameInput.setAttribute("id", "user_name");
	empInfo.appendChild(nameInput);
}

・ノードを挿入する
appendChildで子ノードを追加した場合は、必ず1番下の子どもとして追加される。
画面表示でも1番下になってしまう。
複数の子ノードの間に新しいノードを挿入する場合は、insertBeforeやinsertAdjacentElementを使う。

insertBefore 既存ノードの前に新規オブジェクトを挿入する
書式 object.insertBefore(newNode, existingNode)
機能 objectで指定されたノード内で、第二引数で指定された既存ノードオブジェクトの前に指定された新しいノードオブジェクトを挿入する。
引数 newNode:新しいノードオブジェクトを指定。existingNode:既存のノードオブジェクトを指定
返り値 ノードオブジェクト
insertAdjacentElement 隣接するエレメントにオブジェクトを挿入
書式 object.insertAdjacentElement("type" ,indObj)
機能 オブジェクトの指定された位置に隣接するエレメントオブジェクトを挿入する。
引数 type
返り値 エレメントオブジェクトを返す

insObj:追加する要素オブジェクトを指定
[typeで指定する値]
BeforeBegin:開始タグの前
AfterBegin:開始タグの後
BeforeEnd:終了タグの前
AfterEnd:終了タグの後

・ノードを挿入するサンプル

function domFunc() {
	var newNode = document.createElement("p");
	var title = document.createTextNode("Test");
	newNode.appendChild(title);
	preNode = document.getElementsByTagName("nobr")[0];
	document.getElementsByTagName("center")[0].insertBefore(newNode, preNode);
}

勉強した本

Ajaxによる業務アプリケーション開発

Ajaxによる業務アプリケーション開発


この本に載っているサンプルを愚直に書いてみる事でやっと、JavaScriptの感じがつかめてきた気がする。
やっぱり、ある程度の量を書いてみないと、感じは掴めないものなんだなぁと実感。
サンプルが全部ちゃんと載っているのがすごくいい。

感謝のプログラミング

今回で感謝のプログラミングは【233時間目】
10000時間まで、あと【9767時間】