【JavaScript】JavaScript的对象-构造方法与this关键字

简介:
构造方法和this关键字
*为一个对象实例新增加的属性和方法,
不会增加到同一个对象所产生的其他对象
实例上。
<script language="javascript">
    function Person()//构造函数
    {
        
    }
    var person1=new Person();
    person1.age=18;
    person1.name="Tom";
    function sayFunc()
    {
       alert(person1.name+":"+person1["age"]); 
    }
    person1.say=sayFunc;
    person1.say();


    var person2=new Person();
    alert(person2.age);
</script>

显示结果:Tom:18、undefined。说明person2当中根本不存在age成员属性。
这是由于我们在调用person2的age成员之前,并没有为person2对象实例
创建名为"age"的成员变量。


*所有的实例对象在创建后都会自动调用
构造函数,在构造函数中增加的属性和方法
会被增加到每个对象实例上。


*对象实例使用new关键字创建的,在构造
方法中不要有返回结果的return语句。

*调用对象的成员方法时,需要使用"对象实例.成员方法"的
形式,很显然,用作成员方法的函数被调用时,一定伴随着
有某个对象实例。this关键字代表某个成员方法执行时,引用
该方法的当前对象实例,所以,this关键字一般只在用作对象
成员方法的函数中出现。

例如:

<script language="javascript">
    function Person(name,age)
    {
        this.age=age;
        this.name=name;
        this.say=sayFunc;
    }
    function sayFunc()
    {
        alert(this.name+"."+this.age);
    }
    var person1=new Person("张三",18);
    person1.say();
    var person2=new Person("李四",20);
    person2.say();
</script>
转载请注明出处:http://blog.csdn.net/acmman/article/details/43908755
相关文章
|
1月前
|
JavaScript 前端开发
JavaScript Date(日期) 对象
JavaScript Date(日期) 对象
38 2
|
5天前
|
Web App开发 JavaScript 前端开发
如何确保 Math 对象的方法在不同的 JavaScript 环境中具有一致的精度?
【10月更文挑战第29天】通过遵循标准和最佳实践、采用固定精度计算、进行全面的测试与验证、避免隐式类型转换以及持续关注和更新等方法,可以在很大程度上确保Math对象的方法在不同的JavaScript环境中具有一致的精度,从而提高代码的可靠性和可移植性。
|
1天前
|
JavaScript 前端开发
如何在 JavaScript 中使用 __proto__ 实现对象的继承?
使用`__proto__`实现对象继承时需要注意原型链的完整性和属性方法的正确继承,避免出现意外的行为和错误。同时,在现代JavaScript中,也可以使用`class`和`extends`关键字来实现更简洁和直观的继承语法,但理解基于`__proto__`的继承方式对于深入理解JavaScript的面向对象编程和原型链机制仍然具有重要意义。
|
5天前
|
JavaScript 前端开发 图形学
JavaScript 中 Math 对象常用方法
【10月更文挑战第29天】JavaScript中的Math对象提供了丰富多样的数学方法,涵盖了基本数学运算、幂运算、开方、随机数生成、极值获取以及三角函数等多个方面,为各种数学相关的计算和处理提供了强大的支持,是JavaScript编程中不可或缺的一部分。
|
29天前
|
存储 JavaScript 前端开发
JavaScript 对象的概念
JavaScript 对象的概念
35 4
|
27天前
|
缓存 JavaScript 前端开发
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
29 1
|
28天前
|
存储 JavaScript 前端开发
js中函数、方法、对象的区别
js中函数、方法、对象的区别
15 2
|
30天前
|
JavaScript 前端开发 Unix
Node.js 全局对象
10月更文挑战第5天
21 2
|
1月前
|
存储 JavaScript 前端开发
js中的对象
js中的对象
18 3
|
1月前
|
JavaScript 前端开发
JavaScript Math(算数) 对象
JavaScript Math(算数) 对象
20 4