js深入研究之牛逼的类封装设计
生活随笔
收集整理的這篇文章主要介紹了
js深入研究之牛逼的类封装设计
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
<script type="text/javascript">
var Book = function(newIsbn, newTitle, newAuthor) { // implements Publication// 私有屬性var isbn, title, author;// 私有方法
function checkIsbn(isbn) {if(isbn == undefined || typeof isbn != 'string') {return false;}return true; // All tests passed.
} // 特權(quán)方法this.getIsbn = function() {return isbn;};this.setIsbn = function(newIsbn) {if(!checkIsbn(newIsbn)) throw new Error('Book: Invalid ISBN.');isbn = newIsbn;};this.getTitle = function() {return title;};this.setTitle = function(newTitle) {title = newTitle || 'No title specified';};this.getAuthor = function() {return author;};this.setAuthor = function(newAuthor) {author = newAuthor || 'No author specified';};// 構(gòu)造代碼this.setIsbn(newIsbn);this.setTitle(newTitle);this.setAuthor(newAuthor);
};// Public, non-privileged methods.
Book.prototype = {display: function() {alert("isbn:"+this.getIsbn()+" title:"+this.getTitle()+" author:"+this.getAuthor());}
};//var theHobbit = new Book(123, '', 'J. R. R. Tolkein'); // 非字符串拋出異常
var theHobbit = new Book('1990-78sd-1092', '', 'J. R. R. Tolkein');
theHobbit.display(); // Outputs the data by creating and populating an HTML element.</script>
必須通過(guò)get方法來(lái)獲取數(shù)據(jù),因?yàn)閿?shù)據(jù)是私有的。
js設(shè)計(jì)模式太牛逼了。
總結(jié)
以上是生活随笔為你收集整理的js深入研究之牛逼的类封装设计的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: “达克效应”让人们信心满满还是畏惧不前?
- 下一篇: Vsphere 6.0