js补充之面向对象&&this

1.js面向对象

类似Python,也有面向对象概念,只不过定义方式不同

<script>
//    var a=666;
    function Foo() {    #没有单独定义‘类’的概念,就用函数定义的关键字 加 函数名首字母大写---就是类的定义
    var a = 123;         
    this.a = 456;
    (function() {
        alert(a); // 123
        alert(this.a); // undefined  window对象是类外的
    })(); //自执行函数()
}
var f = new Foo()   // 实例化也是执行函数
</script>



重要点:
1、js函数里的this就是指window对象
2、js类里的this都是值实例的对象
3、对象的赋值与取值是两个概念:this.a=xxx 定义对象属性;this.a取值对象属性里取不到,就往外找类属性,(这个跟Python类似)再找不到就undefined

 

posted @ 2017-03-21 18:49  chenzhuo  阅读(248)  评论(0编辑  收藏  举报