您好,登錄后才能下訂單哦!
小編給大家分享一下javascript特權方法的作用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
1.SpringMVC,Spring Web MVC是一種基于Java的實現了Web MVC設計模式的請求驅動類型的輕量級Web框架。2.Shiro,Apache Shiro是Java的一個安全框架。3.Mybatis,MyBatis 是支持普通 SQL查詢,存儲過程和高級映射的優秀持久層框架。4.Dubbo,Dubbo是一個分布式服務框架。5.Maven,Maven是個項目管理和構建自動化工具。6.RabbitMQ,RabbitMQ是用Erlang實現的一個高并發高可靠AMQP消息隊列服務器。7.Ehcache,EhCache 是一個純Java的進程內緩存框架。
在javascript中,特權方法指那些在查看并處理私有變量的同時,允許用戶以公共方法的方式訪問的方法。作用:在構造函數外面公開訪問(僅限于實例化的對象),而且還能夠訪問私有成員和方法;通過特權方法可以控制公有方法對私有屬性或方法的訪問。
本教程操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
特權方法:
指那些在查看并處理私有變量的同時,允許用戶以公共方法的方式訪問的方法.
要點:
1.特權方法是一個方法
2.特權方法可以訪問私有變量
定義特權方法
在構造函數內部通過this關鍵字定義的的方法,可以被實例化的對象繼承所調用。
var Student = function(name) { var _name = name; //私有屬性 //特權方法 this.getName = function() { return _name; }; this.setName = function(name) { _name = name; }; }; var s1 = new Student('zhangsan'); s1.getName(); //zhangsan
特權方法的作用
特權方法能夠在構造函數外面公開訪問(僅限于實例化的對象),而且還能夠訪問私有成員和方法,因此用來做為對象或者構造函數的接口最合適不過了,通過特權方法我們可以控制公有方法對私有屬性或方法的訪問。 在JS框架的擴展中有很多應用。
特權方法與公有方法的區別
相同點:
1、 都可以在構造函數外部公開訪問。
2、都可以訪問公有屬性
不同點:有2點
1、每個實例都要擁有一份特權方法的副本(除在單例中使用外,需要考慮內存),而公有方法為所有實例共享
//創建Student對象實例 var s1 = new Student('zhangsan'); var s2 = new Student('lisi'); //兩實例的特權方法的引用不相同, 說明在對象實例化的時特權方法被重新創建 console.log(s1.getName === s2.getName); //false
2、特權方法可以訪問私有屬性和方法,而公有方法不能。
//為Student創建公有方法 //公有方法不能訪問私有屬性 Student.prototype.myMethod = function() { console.log(_name); //ReferenceError: _name is not defined }; s1.myMethod();
以上是“javascript特權方法的作用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。