现在的位置: 首页 > 综合 > 正文

25-JavaScript-面向对象-构造器-更改this指向-遍历对象

2014年09月05日 ⁄ 综合 ⁄ 共 925字 ⁄ 字号 评论关闭

- 构造器
- 对象的创建
- 更改this的指向
- 遍历对象的属性和方法  for in

1. 构造器定义类


 1) 普通方式


    function() {
        属性;
        方法;
    }

 2) 构造器一


    function(参数1, 参数2) {
        属性1 = 参数1;
        属性2 = 参数2;
    } 

 3) 构造器二  

    function(参数1, 参数2) {
        属性 = 参数1;
        方法 = 参数2;
    }    

2. 简单方式创建对象


 1) 语法


    { 属性名:值, 方法名:值}

 2) 举例

    var stu = { name:"zhangsan", age: 22 };

    // 调用属性
    console.info( stu.name );
    console.info( stu["age"] );

    // 添加方法
    stu.show = function(){
        return this.name + "   " + this.age;
    };
    console.info( stu.show() );

    // 构造函数
    console.info( stu.constructor );
    /*
        zhangsan
        22
        zhangsan   22
        Object()
    */ 

3. 更改this的指向/指定由哪个对象调用该方法


 1) 语法


    functionName.call( thisobj[, args] );

 2) 举例

    var dog = { nickname:"哇哈哈" };    

    function whoAmI() {
        return this.nickname;
    }

    console.info( window.whoAmI() ); // undefined

    console.info( whoAmI.call( dog ) ); // 哇哈哈

4. 遍历对象的属性和方法


 1) 语法


    for ( key in obj) {
        // obj[key]
    }

 2) 举例

    var stu = {
        name : "张三",
        age : 23,
        gender : "男"
    };

    for( key in stu) {
        console.info( key + "  " + stu[key] );
    }
    /*
        name  张三
        age  23
        gender  男
    */

 3) 扩展 


    - 查看当前浏览器window支持的属性和方法
    

    for ( key in window ) {
        document.write( key + "=" + window[key] + "<br/>" );
    }      




抱歉!评论已关闭.