Skip to content

Object Operations

Deep merge, flatten, dot-path get/set, and unflatten.

5 modules

ModuleDescription
ディープマージ複数のオブジェクトをディープマージする
オブジェクトをフラット化ネストされたオブジェクトを単一レベルにフラット化する
値を取得パスでオブジェクトから値を取得する
値を設定パスでオブジェクトに値を設定する
オブジェクトをアンフラット化ドット表記のオブジェクトをネストに戻す

Modules

ディープマージ

object.deep_merge

複数のオブジェクトをディープマージする

Parameters:

NameTypeRequiredDefaultDescription
objectsarrayYes-マージするオブジェクトの配列
array_mergestringNoreplaceマージするオブジェクトの配列

Output:

FieldTypeDescription
resultobjectマージされたオブジェクト

オブジェクトをフラット化

object.flatten

ネストされたオブジェクトを単一レベルにフラット化する

Parameters:

NameTypeRequiredDefaultDescription
objectobjectYes-フラット化するネストされたオブジェクト
separatorstringNo.フラット化するネストされたオブジェクト
max_depthnumberNo0キーのセパレーター

Output:

FieldTypeDescription
resultobjectフラット化する最大深度 (0 = 無制限)
keysarrayフラット化されたオブジェクト

値を取得

object.get

パスでオブジェクトから値を取得する

Parameters:

NameTypeRequiredDefaultDescription
objectobjectYes-値を取得するオブジェクト
pathstringYes-値を取得するオブジェクト
defaultanyNo-ドット表記のパス

Output:

FieldTypeDescription
valueanyパスが見つからない場合のデフォルト値
foundboolean取得された値

値を設定

object.set

パスでオブジェクトに値を設定する

Parameters:

NameTypeRequiredDefaultDescription
objectobjectYes-変更するオブジェクト
pathstringYes-変更するオブジェクト
valueanyYes-ドット表記のパス

Output:

FieldTypeDescription
resultobject設定する値

オブジェクトをアンフラット化

object.unflatten

ドット表記のオブジェクトをネストに戻す

Parameters:

NameTypeRequiredDefaultDescription
objectobjectYes-アンフラット化するフラットなオブジェクト
separatorstringNo.アンフラット化するフラットなオブジェクト

Output:

FieldTypeDescription
resultobjectキーのセパレーター

Released under the Apache 2.0 License.