このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。

今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。

JavaScriptのクラスもどきと、図形のアフィン変換ライブラリ (2)

関数

/* -*- coding: utf-8 -*- */
/* kk.js */

function f1(n) {
  return (n + 1);
}

var f2 = function(n) {
  return (n + 1);
}

function f3(n) {
  this.result = n + 1;
  return this.result;
}

function f4(n) {
  this.result = n + 1;
}

function f5(n) {
  this.result = n + 1;
  return this.result;
}
f5.message = "hello";

var obj1 = {}
obj1.a = 100;
obj1.f = function (n) { return (n + 1);};

var obj2 = {
  a : 200,
  f : function (n) { return (n + 2);}
};
<html>
<head>
 <script src="test.js" ></script>
</head>

<h1>Test</h1>
  1. オブジェクトって?
  2. オブジェクトとObjectは違う?
  3. 配列もオブジェクトなの?
  4. 「Objectオブジェクト」
  5. 関数はオブジェクト(要注意)である。
  6. 関数は引数を渡して実行できる。「呼び出し」という。
  7. 普通の丸括弧を使う以外の呼び出し方
  8. 関数は値を返す(undefinedを返すことを含む)。
  9. 関数はオブジェクトのセットアップにも使える。
  10. 関数でセットアップされたオブジェクトには痕跡が残る。
  11. 関数はオブジェクトだからプロパティを持てる。
  12. オブジェクトのプロパティ値を関数にできる。
  13. 関数のprototypeプロパティは特別な意味を持つ。
  14. Objectオブジェクトの__proto__プロパティは特別な意味を持つ。
  15. 「プロトタイプ」という言葉、分類のクラスとはまったく異なる発想。典型例、親玉、依頼先、便利屋、ヒーロー、…。
  16. this, prototype, __proto__ ですべて説明が付く。