当前位置: 首页 > news >正文

六安品牌网站建设怎么样/西安seo网站建设

六安品牌网站建设怎么样,西安seo网站建设,网站二维码链接怎么做,房九九西安房产网new new : 官方解释: 如果在一个函数前面带上new来调用,那么背地里将会创建一个连接到该函数的prototype的成员的新对象,同时this会被绑定到哪个新对象上;new 是用来创建对象的;当在自定义的function类型前使用new时&a…

new

new : 官方解释: 如果在一个函数前面带上new来调用,那么背地里将会创建一个连接到该函数的prototype的成员的新对象,同时this会被绑定到哪个新对象上;
new 是用来创建对象的; 当在自定义的function类型前使用new时,只有当函数无返回时才有区别;
当无返回值时:使用new可以获得对象,不使用new就是执行一个普通的函数; 当有返回值时:使用new与否结果都是一样的。

prototype 与 __proto__

只有类型才有prototype;  比如 Object ,Function,Boolean以及自定义的function 对象才会有__proto__;并且对象的__proto__执行类型的prototype; Math有__proto__但是没有prototype,因为它是对象,但不是类型。
  var Quo = function (str){this.status = str;}//只有类型才能访问到prototypeQuo.prototype.getStatus = function (){ return this.status;};var myQuo2 = new Quo("c222");var myQuo = new Quo("confused");//对象的__proto__执行类型的prototypemyQuo.__proto__.gstatus = function (){alert(2222);}alert(myQuo.getStatus());myQuo.gstatus();//原型被人改变了myQuo2.gstatus();


模块模式 与原型链模式

原型链模式是将方法添加到原型上面,模块模式是使用闭包将模拟class的格式;
  /*模块模式*/var obj  = function (){this.name = "wch";function getName(){return name;};function setName(n){name = n;};return {getName:getName,setName:setName}};/*原型链模式*/var Quo = function (str){this.status = str;}Quo.prototype.getStatus = function (){ return this.status;};	var myQuo = new Quo("confused");alert(myQuo.getStatus());


转载于:https://www.cnblogs.com/vvch/p/4027567.html

相关文章:

  • 网站二级域名查询/百度智能建站平台
  • 网站二级目录做优化/郑州粒米seo外包
  • 网站二级目录做优化/郑州粒米seo外包