混合继承
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
|
function man () {
this.dick = "big"
}
man.prototype = {
funk : function () {
console.log('每秒一百下');
}
}
var black = new man();
var white = new man();
console.log(black.proto === man.prototype);
</script
正则 注册 formatString的实现
模板
var data = [
{
"name" : :"mark",
"age" : 25},
{
"name" : :"mark",
"age" : 25},
{
"name" : :"mark",
"age" : 25}]
var source = "<h1>{{name}}</h1>"+
"<h1>{{age}}</h1>"
var render = template.compile(source);
var html = render(data);
function Temp (source,data) {
var render = template.compile(source);
var html = render(data);
return html
}
-----------------------------------------------
var a = function () {
this.say = function () {
alert(1);
}
}
var bb = new a();
var cc = {
"say" : function(){
alert(1);
}
}
cc.proto = a.prototype
bb.say();
cc.say();
|
!!!!构造函数不通过__proto__ 继承
!!new 实例一个函数 1新建对象 2让新建对象的__PROTO__ 指向 prototype(原型只继承原型内的 , 不继承构造函数中的内容) 3继承方法
1只有函数对象拥有原型属性
2Foo.prototype = {}会创建一个对象导致 原型内的隐式属性发生变化改变构造器的内容 由Foo 变至 Object
#构造函数