zoukankan      html  css  js  c++  java
  • 关于给javascript对象添加、删除、修改对象的属性

    以下是自己总结的几种方法

    • 利用动态特性

     1             function Person(){};
     2             var person = new Person();
     3             person.name = 'yy';
     4             person.gender = 'girl';
     5             console.log(person.name+','+person.gender);//yy,girl
     6             delete person.name;//删除属性
     7             console.log(person.name);//undefined
     8 //            变式
     9             function Person(){};
    10             var person = new Person();
    11             person['name'] = 'yy';
    12             person['gender'] = 'girl';
    13             console.log(person.name+','+person.gender);//yy,girl
    14             delete person.name;//删除属性
    15             console.log(person.name);//undefined                    
    • 构造函数中this

    var Person = function (){
                    this.name = 'yy';
                    this.gender = 'girl'
                };
                var person = new Person();
                console.log(person.name+','+person.gender);//yy,girl
    • 原型中添加属性

    var Person = function (){    
                };
                Person.prototype.name = 'yy';
                Person.prototype.gender = 'girl';
                var person = new Person();
                console.log(person.name+','+person.gender);//yy,girl
                console.log(person['name']+','+person['gender']);//yy,girl
    • 字面量添加属性

    var person = {    
                };
                person.name = 'yy';
                person.gender = 'girl';
                console.log(person.name+','+person.gender);//yy,girl
                console.log(person['name']+','+person['gender']);//yy,girl
    //            另一种写法
                var person = {
                    name: 'yy',
                    gender: 'girl'
                };
                console.log(person.name+','+person.gender);//yy,girl
                console.log(person['name']+','+person['gender']);//yy,girl
    • 封装extend方法

    var p1 = {};
                var p2 = {name:'yy',gender:'girl'};
                p1.extend = function(obj){
                    for(var k in obj){
                        this[k] = obj[k];
                    }
                }
                p1.extend(p2);
                console.log(p1.name+','+p1.gender);//yy,girl
                console.log(p1['name']+','+p1['gender']);//yy,girl
    •  在此列举了几种对象添加属性的方法,那么对象添加方法也就照猫画虎了

    本文较短,如果有什么建议,多多交流,原创文章,文笔有限,才疏学浅,文中若有不正之处,万望告知,不胜感激!

        

  • 相关阅读:
    Ajax核心对象和AjaxPro框架
    ASP.NET XML与JSON
    jQuery中Ajax的应用
    jQuery中操作表单与表格
    IOS 非常流畅的滑动tableView
    提高自己应用性能的总结架构篇
    LazyCode 自己开源的一个类库
    iOS 自己写的对话框中加入三个输入框
    icmp 流量抓取 转发 代理(2)
    sublime text ctags插件使用
  • 原文地址:https://www.cnblogs.com/goweb/p/5357640.html
Copyright © 2011-2022 走看看