在JavaScript中,是什麼區別:VAR B =的Object.create(一)與變種B = A
var a = { steak:5, soup:2 };
var b = Object.create(a);
和
var a = { steak:5, soup:2 };
var b = a;
在JavaScript中,是什麼區別:VAR B =的Object.create(一)與變種B = A
var a = { steak:5, soup:2 };
var b = Object.create(a);
和
var a = { steak:5, soup:2 };
var b = a;
所不同的是a爲原型b,不是同一個對象。
var a = { steak:5, soup:2 };
var b = a;
b.peas = 1;
console.log(a.peas); // 1
與
var a = { steak:5, soup:2 };
var b = Object.create(a);
b.peas = 1;
console.log(a.peas); // undefined
當您使用創建要創建一個使用給定的原型新對象。當您使用=運算符時,您的不會創建一個新對象,您只需將其引用複製到另一個變量。
編號:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create
您可以測試
var a = { steak:5, soup:2 };
var b = Object.create(a);
// vs
var a = { steak:5, soup:2 };
var b = a;
你可能是指'創建(一)' – 2014-10-27 11:18:33
我相信你有一個錯字 - '變種B =對象.create(b)'不同於'var b = a' – Kami 2014-10-27 11:18:35