JavaScript对象_创建对象

简介: 版权声明:本文为博主原创文章,转载请注明出处。 https://blog.
版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/twilight_karl/article/details/55655478

创建对象

1,直接用Object()创建对象,再向对象中添加属性

person=new Object();
person.firstname="Bill";
person.lastname="Gates";

2,使用花括号创建
person = {firstname:”bill”,lastname:”gates”}

3,使用函数构造对象
var tom = new student();

<html>
    <body>
    <script>
        //使用函数构造对象
        function student(name,num,grade){
            this.name = name;
            this.num = num ;
            this.grade = grade;
        }

        var tom = new student("tom",12345,100);
        alert(tom.name);
    </script>

    </body>
</html>

1,属性名可以用引号括起来,单引号或双引号
2,新建对象时new Object()中的new可以省略

在对象中创建方法。

<html>
//在对象中创建方法
    <body>

    <script>
    //对象构造器
        function person(firstname,lastname,age,eyecolor){
            this.firstname = firstname;
            this.lastname = lastname;
            this.age = age;
            this.eyecolor = eyecolor;

            this.changeName = changeName;

            //函数位置不固定,但是要在使用之前创建
            function changeName(name){
                this.lastname = name;
            }
        }

        var ss = new person("first","last",40,"black");
        ss.changeName("new name");
        alert(ss.lastname);
    </script>

    </body>
</html>

使用匿名函数:

    var jerry = {
        name: 'jerry',
        age: 10,
        run:function(){
            return '123';
        }
    }

遍历一个对象中的所有属性。下面的代码运行结果是:BillGates30

<html>
    <body>
    <script>
        var person = {fname:"Bill",lname:"Gates",age:30};
        for(var s in person){
            document.write(person[s]);
        }
    </script>

    </body>
</html>

在对象中添加函数时,以下面的run方法为例:

    function run(){
            alert("2333");
            return "@@@";
        }

如果赋值时不加括号,使用时也不加括号就类似于一个字符串

赋值:this.myrun = run;
调用:tom.myrun; —>不会执行
调用:alert(tom.mytom);—>弹出函数的源代码

如果赋值时加了括号,在调用时可加可不加:

赋值:this.myrun = run();
调用:tom.myrun; or tom.myrun();

不可以这样赋值:

this.myrun() = run();

删除变量成员

delete jerry.name;

相关文章
|
1天前
|
存储 JavaScript 前端开发
|
2天前
|
JavaScript 前端开发 网络架构
JavaScript编码之路【对象的增强、ES6新特性之函数的默认值设置 、rest参数 (剩余参数)、拓展运算符、对象与数组的解构赋值】
JavaScript编码之路【对象的增强、ES6新特性之函数的默认值设置 、rest参数 (剩余参数)、拓展运算符、对象与数组的解构赋值】
7 1
|
3天前
|
存储 JavaScript 前端开发
JavaScript 对象
JavaScript 对象
9 1
|
6天前
|
JavaScript Java 数据安全/隐私保护
js对象可扩展性和属性的四个特性(下)
js对象可扩展性和属性的四个特性(下)
|
7天前
|
JavaScript 前端开发 算法
虚拟DOM是React的关键技术,它是个轻量的JS对象树,模拟实际DOM结构。
【6月更文挑战第27天】虚拟DOM是React的关键技术,它是个轻量的JS对象树,模拟实际DOM结构。当状态改变,React不直接修改DOM,而是先构建新的虚拟DOM树。通过 diff 算法比较新旧树,找到最小变更,仅更新必要部分,提高性能,避免频繁DOM操作。虚拟DOM还支持跨平台应用,如React Native。它优化了更新流程,简化开发,并提升了用户体验。
15 1
|
9天前
|
存储 JavaScript 前端开发
JavaScript中的对象是数据结构,存储键值对,键为字符串,值可为任意类型,包括函数(作为方法)
【6月更文挑战第25天】JavaScript中的对象是数据结构,存储键值对,键为字符串,值可为任意类型,包括函数(作为方法)。
13 2
|
8天前
|
JavaScript 前端开发
技术经验分享:javaScript遍历对象、数组总结
技术经验分享:javaScript遍历对象、数组总结
技术经验分享:javaScript遍历对象、数组总结
|
1天前
|
JavaScript
js 数组移除指定元素【函数封装】(含对象数组移除指定元素)
js 数组移除指定元素【函数封装】(含对象数组移除指定元素)
2 0
|
1天前
|
JavaScript
JS 数组去重(含简单数组去重【5种方法】、对象数组去重【2种方法】)
JS 数组去重(含简单数组去重【5种方法】、对象数组去重【2种方法】)
7 0