當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
javascript --- 混入
生活随笔
收集整理的這篇文章主要介紹了
javascript --- 混入
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
顯示混入:
function mixin(sourceObj, targetObj){for(var key in sourceObj){ // 遍歷source中的所有屬性if(!(key in targetObj)) { // 找到targetz中沒有的屬性targetObj[key] = sourceObj[key];}}return targetObj; }var Vehicle = {engines: 1,iginition: function() {console.log("Turning on my engine.");},drive: function(){this.ignition();console.log("Steering an moving forward!" );} };var Car = mixin( Vehicle, {wheels: 4,drive: function() {Vehicle.drive.call( this);console.log(" Rolling on all " + this.wheels + " wheels!");} });寄生繼承:
// 既是顯式的又是隱式的 function Vehicle() {this.engines = 1; } Vehicle.prototype.iginition = function() {console.log("Turning on my engine."); } Vehicle.prototype.drive = function() {this.ignition();console.log("Steering and moving forward!"); };// "寄生類"Car function Car(){var car = new Vehicle();car.wheels = 4;var vehDrive = car.drive;car.drive = function(){vehDrive.call(this);console.log("Rolling on all" + this.wheels + "wheels!);}return car; } var myCar = new Car();myCar.drive();// Turning on my engine. // Steering and moving forward! // Rolling on all 4 wheels!隱式混入:
var Something = {cool: function() {this.greeting = "Hello World";this.count = this.count ? this.count + 1: 1; // 存在count,次數加1,否則初始值為1} }; Something.coll(); Something.greeeting = "Hello World"; Something.count = 1;var Another = {cool: function() {Something.cool.call(this); // 執(zhí)行Something.cool,作用域是Another的} }; Another.cool(); Another.greeting = "Hello World"; Another.count = 1; // 注.Another.count 和 Something.count不共享狀態(tài).參考《你不直到的JavaScript》(上卷) P135~P140
總結
以上是生活随笔為你收集整理的javascript --- 混入的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机无法安装蓝牙驱动,win7电脑蓝牙
- 下一篇: python提取qq群成员代码_Pyth