zoukankan      html  css  js  c++  java
  • JS 封装

    一。全局变量
    
    定义:三种
    	(1)	var test = 'some value';
    	(2)	window.test = 'some value';
    	(3)	(function () {
    			var a;
    			test = 'some value';
    		})();	//在函数中不写var的,就是全局。
    
    
    注意:
    	function todo() {
    		var a = test = 'some value';
    	}
    
    	//在js中。a是局部变量, 而test是全局变量。
    
    	function todo() {
    		var a = '11',
    			b = 'ab';
    		test = 'some value';
    	}
    
    全局变量,可以在任何地方做操作。可能会产生命名冲突。程序不稳定。调试困难。
    
    二,信息隐藏。
    	面向对象的封装,有一些公有方法,和一些私有方法。
    
    	//使用函数封装
    	function A() {
    		this.a = 'a';
    		this.b = 'b';
    
    		this.step1 = function () {
    			;
    		}	
    		this.step2 = function () {
    			;
    		}
    	}
    	
    	//使用原型封装
    	function B() {
    		this.a = 'a';
    		this.b = 'b';
    	}
    	var pro = A.prototype;
    	pro.step1 = function () {
    		;
    	}
    	pro.step2 = function () {
    		;
    	}
    
    	有问题。公有私有不分。访问权限相同。没有达到信息隐藏的目的。
    
    
    达到信息隐藏的方式。外界也可以操作

    function A() { var config = ['a', 'b', 'c']; this.getConfig = function () { return config; } } var pro = A.prototype; pro._step1 = function () { ; } pro._step2 = function () { ; } 继承: 类继承:   组合继承,就不写了。

    原型继承:这个很少用,写一下。 (function () { var proto = { action1 : function () { ; }, action2 : function () { } } var obj = Object.create(proto); }) ();

     

  • 相关阅读:
    聊聊 归一化和标准化
    感觉对自己比较有意义的文章收录
    Quartz.Net 使用心得(一)
    Quartz.Net 使用心得(二)
    HttpClient异步请求Post传递Json
    今天我也用上了阿里云的Centos
    WebApi传参总动员(一)
    半监督学习
    特征选择
    深度学习图像分割——Unet网络
  • 原文地址:https://www.cnblogs.com/hgonlywj/p/4857839.html
Copyright © 2011-2022 走看看