我有两个来自同一构造函数的对象,它们区分第一个和第二个属性,但所有其他属性都匹配。我想在代码中确认一下。
JSON.stringify可以比较整个对象,但从某个属性开始不太好。我尝试为每个对象创建一个两个变量,对第一个和第二个属性进行描边,并为每个变量将它们一起添加到一个字符串中。
然后我比较两个使用子串的字符串对象,从变量LENGTH开始,如下所示:
function Car(carname, price, performance, efficiency, offroad, size, twoseat, legroom, trunkspace, electric) {
this.carname = carname; this.price = price; this.performance = performance;
this.efficiency = efficiency; this.offroad = offroad; this.size = size;
this.twoseat = twoseat; this.legroom = legroom; this.trunkspace = trunkspace; this.electric = electric;}
var userParameters = new Car("!", 1, null, true, false, true, false, false, false, false);
var fiat500 = new Car("Fiat 500", 19000, null, true, false, true, false, false, false, false);
var n = JSON.stringify(userParameters.carname) + JSON.stringify(userParameters.price);
var m = JSON.stringify(fiat500.carname) + JSON.stringify(fiat500.price);
var stringCar = JSON.stringify(fiat500);
var stringUser = JSON.stringify(userParameters);
if ((stringCar.substring(n.length)) === (stringUser.substring(m.length))) {
//Do stuff in case equal
}
看起来它会是解决方案,但它不起作用。 Halp