<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script type="text/javascript">
//创建对象之寄生构造模式
function Person(name , age , job){
var o = new Object();
o.name = name;
o.age = age;
o.job = job
o.sayName = function(){
console.log(this.name);
}
return o;
}
var frient = new Person("宝清老窖" , 29 , "Software");
frient.sayName();
//怎么创建一个特殊的数组呢?
function specialArray(){
//创建数组
var values = new Array();
//添加值
values.push.apply(values , arguments); //这句话一般人不理解,跟下面是相等的
/*if( arguments.length > 0 ){
for(var i = 0 ; i < arguments.length ; i++){
values.push(arguments[i]);
}
}*/
//添加方法
values.toPipedString = function(){
return this.join('|');
}
return values;
}
var colors = new specialArray('red','yellow','green');
console.log(colors);
//寄生模式不能通过instanceof来确定操作类型
//所以尽量避免使用
</script>
</body>
</html>