zoukankan      html  css  js  c++  java
  • 解决原型链上有几个不必要存在的父亲的属性的问题

    backbone里面的

    http://test.xdnote.com/chapter-javascript/strange2.html

    
    	function A(){
    		this.init(arguments);
    		return 0;
    	}
    	A.prototype={
    		init:function(args){
    			console.log(args);
    		}
    	}
    	//	1.这里面会报一个语法错误,主要是因为它没有实例化
    	//	2.更加直白的说下:像这种写法 return 没有任何作用,因为构造器中有this指针就说明,只有new操作才能,而new操作总是返回的对象本身,而不是构造器中return的值
    	A();
    
    	//	2.没有参数时,括号都可以不写,效果与写了是一样的,当然个人建议任何时候都写括号
    	new A;
    	new A();
    	
    	//	3.带参数时,就必须写括号了
    	new A(1);
    	new A(1,'2');
    	
    	//	4.仿造一下,由于 函数已经定义了,所以不太好证明第一段代码的想法
    	//	(A);
    	//	!A;
    	//	var dd = new A('dd');
    	//	dd.init(1,'2');
    	//	dd();	//error
    	//	dd;
    	//	A=!A;
    	//	console.log(A);
    	//	console.log(new A('DFA'));
    	//	A();
    	//	A++;
    	//	console.log(A);
    	//	console.log(new A('DFA'));
    	//	(A);
    	
    	//	5.再来一无段
    	function B(){
    		console.log(arguments);
    		return 1;
    	}
    	B();
    	new B;
    	new B(1);
    	new B(1,'2');
    	B;
    	
    	//	6.结论:无参可省略括号,但此表达式只能构造一个对象,如果要操作还是加把括号加上
    	console.log(new Date);
    	console.log(new Date());
    	console.log((new Date).getTime());
    	console.log(new Date().getTime());
    	
  • 相关阅读:
    jmeter巧用自增长型变量
    jmeter实现一次登录,多次业务请求(不同线程组间共享cookie和变量)
    jmeter实现IP欺骗
    基于jmeter+ant实现的接口自动化测试
    基于Robot Framework的接口自动化测试
    至少与至少
    code+7正式赛划水记+HardA~C题解
    code+7彩蛋题题解
    开发一个博客园系统
    beautifulSoup模块
  • 原文地址:https://www.cnblogs.com/oklfx/p/8158881.html
Copyright © 2011-2022 走看看