zoukankan      html  css  js  c++  java
  • JavaScript也可以玩私有方法

    JavaScript中有一个特性:任何两个对象都不相等也不全等

    利用这个特点,我们也可以让JavaScript玩一个私有方法出来.

    具体思路如下:

      我们利用Key对比的方式,如果Key相等则可以调用,否则就出错.当然也得把这个Key给藏起来.

      代码如下:

    ;;;(function(){
        var  Key = {} // 我们要用到有Key 
        window['MyObj'] = {
            _say : function( msg , key ){
                if ( key !== Key ){
                     throw "This is a private method !"
                }else{
                     alert( msg )
                }
            },
            say : function( msg ){
                this._say( msg , Key );
            }
        }
       }());
    

    这样_say方法虽然外部可见,但调用的时候由于匿名函数外部拿不到这个Key故而就没办法在外部调用这个_say方法了.

  • 相关阅读:
    iou与giou对比
    Linux学习第一天 vim
    奖励加分申请
    人月神话阅读笔记3
    5.27
    5.26
    5.25
    5.23
    5.22
    5.21
  • 原文地址:https://www.cnblogs.com/darrel/p/2081446.html
Copyright © 2011-2022 走看看