• js 中对象--属性相关操作


    查询属性:

    可以用 对象.属性 来查询属性和属性方法               或者                    对象[“属性”]  来查询属性和属性方法

    演示代码:

     1 <script>
     2       var obj ={
     3           username:"ziksang",
     4           age:22,
     5           addr:"北京",
     6           say:function(){
     7               return "我的名字叫 "+this.username   //解析this,此处的this是指向obj对象,只是在方法say中调用了obj的属性,所以用this.obj来索引
     8           }
     9       }
    10        alert(obj.username)   //查询对象属性可以用对象.属性
    11        alert(obj["addr"])    //还可以用对象["属性"]
    12        var key="age"       //当不确定属性的时候把属性赋值给一个变量
    13        alert(obj[key]);    //调用时可以用obj[变量] 
    14        alert(obj.say())    //查询属性方法时可以用obj.属性()
    15 </script>

    如果使用构造函数来创建的对象如何查询属性?

    演示代码:

    1 <script>
    2       function Person(name,age,sex){
    3           this.name = name;
    4           this.age =age;           //this 指向的obj对象
    5           this.sex = sex;
    6       }
    7       var obj = new Person("ziksang",22,"男")
    8           alert(obj.name+"
    "+obj.age+"
    "+obj.sex)   //=>ziksang 22 男
    9 </script>

    如何来添加属性?

    演示代码:

     1 <script>
     2      var obj ={}               //声明一个空的对象
     3      obj.usename = "ziksang"   //用obj.想要设置的属性 = 值
     4      obj["age"] = 22           //还可以用obj["属性名"] =值
     5      obj.say=function(){       //用obj.想要的属性方法 = 匿名函数
     6          return this.usename
     7      }
     8      alert(obj.usename)       //查询是否有此属性
     9      alert(obj.age)
    10      alert(obj.say())
    11 </script>

    如何来修改属性?

    演示代码:

     1 <script>
     2        var obj = {
     3            name:"ziksang",
     4            age: 22,
     5            say:function(){
     6                return this.name
     7            }
     8        }
     9        obj.name = "博客园"       //用obj.属性名重新赋值
    10        obj["age"] = 32            //以上都同理
    11        obj.say = function(){
    12             return this.age
    13        }
    14        alert(obj.name+"
    "+obj.age+"
    "+obj.say())// =>博客园  32  32
    15 </script>

    如何来删除属性?

    演示代码:

     1 <script>
     2        var obj = {
     3            name:"ziksang",
     4            age: 22,
     5            say:function(){
     6                return this.name
     7            }
     8        }
     9           delete obj.name        //用 delete加上对象.属性名
    10           delete obj.age
    11           delete obj.say()            //以上都同上
    12        alert(obj.name+"
    "+obj.age+"
    "+obj.say())// =>undefined   undefined   undefined
    13 </script>

    如何来遍历属性? 用for in 来遍历属性

    演示代码:

     1 <script>
     2        var obj = {
     3            name: "ziksang",
     4            age: 22,
     5            say: function () {
     6                return this.name
     7            }
     8        }
     9 
    10        for( var p in obj){
    11            alert( p+"
    ")    //用for 声名的属性变量来依次循环object
    12             }
    13 
    14 </script>
  • 相关阅读:
    AJAX问题总结(针对JAVA)
    关于IE浏览器的缓存问题
    tomcat和jdk版本兼容问题。
    Java中的索引和数据库的索引区别
    Eclipse 连接Oracle 11g 时报ORA-12505错误的解决办法
    Tomcat 8 & JNDI Datasource
    【LeetCode】019. Remove Nth Node From End of List
    【前端UI框架】EasyUI
    装饰者模式
    【LeetCode】234. Palindrome Linked List
  • 原文地址:https://www.cnblogs.com/Ziksang/p/5186662.html
Copyright © 2020-2023  润新知