var Car=function(type){ var status="stop",//这里为什么不能用“:” light="off";//这里为什么不能用“:” return{ type:type, start:function(){ status="driving"; light="on"; }, stop:function(){ status="stop"; light="off"; }, getStatus:function(){ console.log(type +" is "+ status +" with light "+ light ); } }}var audi=new Car("audi");audi.start();audi.getStatus();//audi is driving with light onaudi.stop();audi.getStatus();//audi is stop with light off
2 回答
已采纳
HiFrontend
TA贡献24条经验 获得超13个赞
= 是运算符
:是操作符
两回事
= 一般用于赋值
:一般用在字面量创建数组或对象时使用
而你给出的代码里
status="stop",
light="off";
这时是赋值,所以用 = 。
而下面return的是对象,对象中的是属性和方法。
这个对象就用的字面量方法来创建的,里面的属性和方法就需要用 : 来表示,如下:
type:type
如果不懂为什么对象里用 : ,那么建议去看一下对象的几种创建方式。
实在不能理解,就记住:
单个等于号 = ,就是用来创建变量用的
而 冒号 : 一般都是用在字面量创建数组或对象是会用到
Tobey_滔
TA贡献242条经验 获得超128个赞
简单理解吧!!
等号是赋值 比如var a = 1;
:是对应关系,一般用于键值数组对比如
var arr = {
name:"Tobey",
age:21,
}
添加回答
举报
0/150
提交
取消