zoukankan      html  css  js  c++  java
  • JavaScript Object

     JavaScript对象简介

    JavaScript中的对象,是一种无序的集合数据类型,它有若干个键值对组成。我们可以使用一对花括号来表示一个对象

    // 1. 多个键值对之间用逗号分隔,最后一个键值对一般不加逗号
    // 2. kye可以加引号也可以不加,但对于非法命名格式必须加引号
    var myObject = {
        name: 'Mr hu',
        age: 20,
        'phone-num': '123'
    }

     对象的属性其实都是字符串形式,Array也为数组,所以Array的索引其实也是字符串,只不过用的时候可以不加引号。

     JavaScript中的this

    在面向对象语言中,this表示当前对象的一个引用。在JavaScript中,this不是固定不变的,它会随着执行环境的改变而改变。

    • 在对象的方法中,this表示该方法所属的对象
    • 在单独使用时,或在非严格模式下的函数中,this表示全局对象
    • 在严格模式下的函数中,this为undefined
    • 在事件中,this表示绑定该事件的元素

     in操作符

    JavaScript中可以通过使用 in操作符 来判断某个属性是否属于某个对象。这里要注意一下,如果该属性是对象继承过来的,使用 in 判断之后也会返回true。

    var person = {
        name: "Mr hu"
    }
    console.log("toString" in person);  //true

    //这里说明一下:toString属性定义在object对象中,而所有对象最终都会在原型链上指向object对象,所以任何对象使用 in 都可以检测得到toString属性

    hasOwnProperty()方法

    该方法用于判断某个属性是否属于某个对象,并且不是该属性不是通过继承而来的。

    var person = {
        name: "Mr hu"
    }
    console.log(person.hasOwnProperty("toString")); //false

    for...in...循环

    for...in... 是 for 循环的一个变体,它可以将对象的所有属性依次循环出来。

    var person = {
        name: "Mr hu",
        age: 20
    }
    for (let key in person) {
        console.log(key);   //name age
    }

    这里要说明一下,由于Array也是对象,而Array的每个索引被视为它的各个属性,所以使用for...in...循环出来的是它的每个索引。

    var person =["I", "Love", "You"];
    for (let i in person) {
        console.log(i); //0 1 2
    }
  • 相关阅读:
    5.3Python解析动态页面源代码
    5.2
    5.1selenium
    团队项目第一阶段冲刺第十天
    团队项目第一阶段冲刺第九天
    4.30线程和进程
    团队项目第一阶段冲刺第八天
    Mac下全局安装yarn,报错,没有访问权限解决办法
    Mac下的常用命令行
    I Term2常用快捷键
  • 原文地址:https://www.cnblogs.com/huwt/p/10615933.html
Copyright © 2011-2022 走看看