Namespace: obj

h5.u. obj

Methods

(static) argsToArray(args) → {Array.<Any>}

argumentsを配列に変換します。
Parameters:
Name Type Description
args Arguments Arguments
Returns:
argumentsを変換した配列
Type
Array.<Any>
Source:

(static) deserialize(value) → {Any}

型情報が付与された文字列をオブジェクトを復元します。
Parameters:
Name Type Description
value String 型情報が付与された文字列
Returns:
復元されたオブジェクト
Type
Any
Source:

(static) expose(namespace, obj)

指定された名前空間に、オブジェクトの各プロパティをそれぞれ対応するキー名で公開(グローバルからたどれる状態に)します。

  • 指定された名前空間が既に存在する場合は、その名前空間に対してプロパティを追加します。
  • 指定された名前空間にプロパティが存在する場合は、『上書きは行われず』例外が発生します。。
実行例:
expose('sample.namespace', {
	funcA: function() {
		return 'test';
	},
	value1: 10
});
実行結果: (window.は省略可)
alert(window.sample.namespace.funcA) -> "test"と表示。
alert(window.sample.namespace.value1) -> 10と表示。
Parameters:
Name Type Description
namespace String 名前空間
obj Object グローバルに公開したいプロパティをもつオブジェクト
Source:

(static) getByPath(namespace, rootObjopt) → {Any}

指定された名前空間に存在するオブジェクトを取得します。

第1引数に名前空間文字列、第2引数にルートオブジェクトを指定します。第2引数を省略した場合はwindowオブジェクトをルートオブジェクトとして扱います。

名前空間文字列はプロパティ名を"."区切りで記述子、ルートオブジェクトからのパスを記述します。また"."区切りの代わりに"[]"を使ってプロパティアクセスを表すことも可能です。


var rootObj = {
	a: {
		b: {
			c: [{
				d: 'hoge'
			}]
		}
	}
};
h5.u.obj.getByPath('a.b.c[0].d', rootObj);
// → hoge

window.hoge = {
	obj: rootObj
};
h5.u.obj.getByPath('hoge.obj.a.b.c[0].d');
// → hoge
Parameters:
Name Type Attributes Default Description
namespace String 名前空間
rootObj Object <optional>
window 名前空間のルートとなるオブジェクト。デフォルトはwindowオブジェクト。
Returns:
その名前空間に存在するオブジェクト
Type
Any
Source:

(static) isJQueryObject(obj) → {Boolean}

オブジェクトがjQueryオブジェクトかどうかを返します。
Parameters:
Name Type Description
obj Object オブジェクト
Returns:
jQueryオブジェクトかどうか
Type
Boolean
Source:

(static) ns(namespace) → {Object}

ドット区切りで名前空間オブジェクトを生成します。 (h5.u.obj.ns('sample.namespace')と呼ぶと、window.sample.namespaceとオブジェクトを生成します。) すでにオブジェクトが存在した場合は、それをそのまま使用します。 引数にString以外、または、識別子として不適切な文字列が渡された場合はエラーとします。
Parameters:
Name Type Description
namespace String 名前空間
Returns:
作成した名前空間オブジェクト
Type
Object
Source:

(static) serialize(value) → {String}

オブジェクトを、型情報を付与した文字列に変換します。

このメソッドが判定可能な型は、以下のとおりです。

  • string(文字列)
  • number(数値)
  • boolean(真偽値)
  • String(文字列のラッパークラス型)
  • Number(数値のラッパークラス型)
  • Boolean(真偽値のラッパークラス型)
  • array(配列)
  • object(プレーンオブジェクト [new Object() または {…} のリテラルで作られたオブジェクト])
  • Date(日付)
  • RegExp(正規表現)
  • undefined
  • null
  • NaN
  • Infinity
  • -Infinity

このメソッドで文字列化したオブジェクトはdeseriarizeメソッドで元に戻すことができます。

object型はプレーンオブジェクトとしてシリアライズします。 渡されたオブジェクトがプレーンオブジェクトで無い場合、そのprototypeやconstructorは無視します。

array型は連想配列として保持されているプロパティもシリアライズします。

循環参照を含むarray型およびobject型はシリアライズできません。例外をスローします。

内部に同一インスタンスを持つarray型またはobject型は、別インスタンスとしてシリアライズします。以下のようなarray型オブジェクトaにおいて、a[0]とa[1]が同一インスタンスであるという情報は保存しません。

a = [];
a[0] = a[1] = [];

注意

function型のオブジェクトは変換できません。例外をスローします。 array型にfunction型のオブジェクトが存在する場合は、undefinedとしてシリアライズします。object型または連想配列にfunction型のオブジェクトが存在する場合は、無視します。

Parameters:
Name Type Description
value Object オブジェクト
Returns:
型情報を付与した文字列
Type
String
Source: