• 解决原型链上有几个不必要存在的父亲的属性的问题


    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());
    	
  • 相关阅读:
    oracle 查询表空间
    oracle 创建表空间
    webservice SOA
    WCF初识
    win10远程桌面身份验证错误,要求的函数不受支持
    一台主机两台显示器实现方式学习
    实现Http Server学习
    lucene索引和查询文件系统存储
    java 大文件输入方式FileOutputStream
    tar
  • 原文地址:https://www.cnblogs.com/oklfx/p/8158881.html
Copyright © 2020-2023  润新知