Welcome

首页 / 脚本样式 / JavaScript / js初始化验证实例详解

本文实例讲述了js初始化验证的方法。分享给大家供大家参考,具体如下:
<script type="text/javascript">var Book = function(isbn, title, author) { if(!this.checkIsbn(isbn)){ throw new Error("Book: Invalid ISBN."); }this.isbn = isbn; this.title = title || "No title specified"; this.author = author || "No author specified";}Book.prototype = { checkIsbn: function(isbn) {if(isbn == undefined || typeof isbn != "string") { return false;}return true; // All tests passed. }, display: function() {alert("isbn:"+this.isbn+" title:"+this.title+" author:"+this.author); }};var theHobbit = new Book("0-395-07122-4", "The Hobbit", "J. R. R. Tolkein");theHobbit.display(); // Outputs the data by creating and populating an HTML element.</script>
对isbn进行验证。是否定义,是否为字符串等等。对title进行判断,设置默认。
另一种实现方式
<script type="text/javascript">/* 出版 interface. *//* var Publication = new Interface("Publication", ["getIsbn", "setIsbn", "getTitle", "setTitle", "getAuthor", "setAuthor", "display"]); */var Book = function(isbn, title, author) { // implements Publication this.setIsbn(isbn); this.setTitle(title); this.setAuthor(author);}Book.prototype = { checkIsbn: function(isbn) {if(isbn == undefined || typeof isbn != "string") { return false;}return true; // All tests passed. }, getIsbn: function() {return this.isbn; }, setIsbn: function(isbn) {if(!this.checkIsbn(isbn)) throw new Error("Book: Invalid ISBN.");this.isbn = isbn; }, getTitle: function() {return this.title; }, setTitle: function(title) {this.title = title || "No title specified"; }, getAuthor: function() {return this.author; }, setAuthor: function(author) {this.author = author || "No author specified"; }, display: function() {alert("isbn:"+this.isbn+" title:"+this.title+" author:"+this.author); }};var theHobbit = new Book("0-395-07122-4", "", "J. R. R. Tolkein");theHobbit.display(); // Outputs the data by creating and populating an HTML element.</script>
接口实现,参考接口,定义了好多方法。
内部方法命名加_,例如这个检测的方法 _checkIsbn
<script type="text/javascript">/* 出版 interface. *//* var Publication = new Interface("Publication", ["getIsbn", "setIsbn", "getTitle", "setTitle", "getAuthor", "setAuthor", "display"]); */var Book = function(isbn, title, author) { // implements Publication this.setIsbn(isbn); this.setTitle(title); this.setAuthor(author);}Book.prototype = { _checkIsbn: function(isbn) {if(isbn == undefined || typeof isbn != "string") { return false;}return true; // All tests passed. }, getIsbn: function() {return this.isbn; }, setIsbn: function(isbn) {if(!this._checkIsbn(isbn)) throw new Error("Book: Invalid ISBN.");this.isbn = isbn; }, getTitle: function() {return this.title; }, setTitle: function(title) {this.title = title || "No title specified"; }, getAuthor: function() {return this.author; }, setAuthor: function(author) {this.author = author || "No author specified"; }, display: function() {alert("isbn:"+this.isbn+" title:"+this.title+" author:"+this.author); }};//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>
更多关于JavaScript相关内容可查看本站专题:《javascript面向对象入门教程》、《JavaScript中json操作技巧总结》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript动画特效与技巧汇总》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。