快捷导航

还是没明白函数中:和=的区别

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

= 是运算符

:是操作符
两回事
= 一般用于赋值
:一般用在字面量创建数组或对象时使用


而你给出的代码里
status="stop",
light="off";
这时是赋值,所以用 = 。
而下面return的是对象,对象中的是属性和方法。
这个对象就用的字面量方法来创建的,里面的属性和方法就需要用 : 来表示,如下:
type:type

如果不懂为什么对象里用 : ,那么建议去看一下对象的几种创建方式。


实在不能理解,就记住:
单个等于号 = ,就是用来创建变量用的
而 冒号 : 一般都是用在字面量创建数组或对象是会用到
回复

使用道具 举报

简单理解吧!!
等号是赋值  比如var a = 1;
:是对应关系,一般用于键值数组对比如
var arr = {
name:"Tobey",
age:21,  
}
回复

使用道具 举报

可能感兴趣的问答

发新帖
  • 微信访问
  • 手机APP