zoukankan      html  css  js  c++  java
  • JS中级

    面向对象三要素:

    封装
    继承
    多态

    1.this 详解,事件处理中this的本质

    • window
    • this —— 函数属于谁
    	<script type="text/javascript">
    	
    	var arr=[12,65,87];
    	//this:当前的方法,属于谁
    	arr.show =function (argument) {
    		// body...
    		console.log(this);      //[12,65,87]
    	}
    	arr.show();
    
     function show(){
     		console.log(this);      //window
    	}
    	show();
    	
    	</script>
    

    2.Object 的使用:##

    <script type="text/javascript">
    var obj = new Object();
    obj.aaa = 12;
    obj.show = function (argument) {
    	console.log(this.aaa); //12
    }
    obj.show();
    </script>
    

    3.工厂方式:

        <script type="text/javascript">
        function createPerson(name, sex) {
            var obj = new Object();
            obj._name = name;
            obj._sex = sex;
    
            obj.showName = function() {
                console.log('我的名字叫:' + this._name);
            }
            obj.showSex = function() {
                console.log('我是' + this._sex + '的');
            }
            return obj;
        }
    
        var p1 = createPerson('唐三', '男');
        p1.showName();
        p1.showSex();
    
        var p2 = createPerson('唐九妹', '女');
        p2.showName();
        p2.showSex();
        </script>
    

    工厂方式的问题:
    1.没有new
    2.每个对象都有一套自己的函数 —— 浪费资源

    4.new的情况:

        <script type="text/javascript">
        function createPerson(name, sex) {
            //var this = Object();
            this._name = name;
            this._sex = sex;
    
            this.showName = function() {
                console.log('我的名字叫:' + this._name);
            }
            this.showSex = function() {
                console.log('我是' + this._sex + '的');
            }
            //return this;
        }
    
        var p1 = new createPerson('唐三', '男'); //new 的情况下
        p1.showName();
        p1.showSex();
    
        var p2 = new createPerson('唐九妹', '女');
        p2.showName();
        p2.showSex();
        </script>
    
  • 相关阅读:
    Unity3d中的属性(Attributes)整理【转载】
    在Unity里面使MMD动起来吧【2】
    在Unity里面使MMD动起来吧【1】
    Unity代码混淆方案
    萌舞Android版Unity笔记整理
    c#实现16进制和字符串之间转换的代码
    关于sqlite3使用top的一些规则总结
    【转】UniSky入门资料
    【转】.NET 产品版权保护方案 (.NET源码加密保护)
    百度云管家下载出错解决思路记录
  • 原文地址:https://www.cnblogs.com/tangge/p/7628121.html
Copyright © 2011-2022 走看看