A simple way to make a new object that inherits from another one, like making a copy with the same basic features.
あるオブジェクトをひな形として受け継ぎ、新しいオブジェクトを作るための仕組みで、似た性質を持つものを簡単にそろえられる。
JavaScript の create() は、「元になるものをヒナ型(ひな形)にして、新しいオブジェクトを作るための仕組み」です。
「まったく空っぽではなく、あるオブジェクトの性質を受け継いだ新しいオブジェクトを作る」ときに使います。
たとえば「基本セットをコピーして、そこにちょっとだけ自分用に設定を足したい」みたいな場面で便利です。
JavaScript
const base = {
hello() {
console.log("こんにちは!");
}
};
const user = Object.create(base);
user.hello(); // 「こんにちは!」と表示
base が「ひな形」Object.create(base) で、その性質を受け継ぐ user を作成user には hello を書いていないけど、ちゃんと使えるbase から受け継いでいるからJavaScript
const baseUser = {
role: "guest",
getInfo() {
console.log("権限:" + this.role);
}
};
const admin = Object.create(baseUser);
admin.role = "admin"; // 上書きできる
admin.getInfo(); // 「権限:admin」と表示
元の機能をそのまま使いつつ、自分用に情報を足したり、変更できるのがポイントです。