创建对象会产生意外结果

Mar*_*ini 0 javascript

我是js的新手.我正在创建一个对象但不知何故它不会在控制台中给出结果.这是我的代码.

var car=new object();
car.name="Mercedes Benz";
car.speed=220;
car.showNameAndSpeed=function(){
console.log("The name of the car is " + car.name + " and the topspeed is " + car.speed());
    };

car.showNameAndSpeed();
Run Code Online (Sandbox Code Playgroud)

它说对象没有定义.我做错了什么?谢谢.

ric*_*agy 7

你的问题是object需要大写 - object这不是JavaScript中的东西,而是Object.

你要:

var car=new Object();
Run Code Online (Sandbox Code Playgroud)

正如w3schools所说,JavaScript标识符区分大小写:

所有JavaScript标识符都区分大小写.

变量lastNamelastname,是两个不同的变量.

所以,objectObject是两个不同的东西,你想要Object-几乎所有的JS开始作为Object.

更多关于对象的信息.


此外,正如厄齐尔指出的那样,你应该car.speed()简单地改变car.speed.你以前设置car.speed220,所以它不是一个功能.car.speed()试图将其视为一种功能,这将导致问题.


总而言之,这段代码就是你想要的:

var car=new Object();
car.name="Mercedes Benz";
car.speed=220;
car.showNameAndSpeed=function(){
console.log("The name of the car is " + car.name + " and the topspeed is " + car.speed);
    };

car.showNameAndSpeed();
Run Code Online (Sandbox Code Playgroud)