JavaScript Object 对象 再解

Posted Bricks

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript Object 对象 再解相关的知识,希望对你有一定的参考价值。

Object 是 javascript 中最复杂的类型,也是平时我们开发当中用的最多的。

JavaScript我们用到最多的对象,有下面这么几个

  • Number

  • String

  • Boolean

  • Symbol(稍微少一点啦)

  • 事实上,JavaScript 的’类’仅仅是运行时对象的一个私有属性,而 JavaScript 中是无 法自定义类型的。

    3 与 new Number(3) 是完全不同的

    3
    ‘3‘
    new Number(3)
    
    s
    ‘s‘
    new String(s)
    
    true
    false
    new Boolean(true)
    new Boolean(false)
    

    Number、String 和 Boolean,三个构造器是两用的,当跟 new 搭配时,它们产生对 象,当直接调用时,它们表示强制类型转换。

    Symbol 函数比较特殊,直接用 new 调用它会抛出错误,但它仍然是 Symbol 对象的构 造器。

    JavaScript 语言设计上试图模糊对象和基本类型之间的关系, 我们日常代码可以把对象的 方法在基本类型上使用,比如:

    console.log(‘hello‘.charAt(3))
    console.log(‘hello‘.charCodeAt(3))
    String.fromCharCodeAt(‘hello‘.charCodeAt(3))
    

    甚至我们在原型上添加方法,都可以应用于基本类型,比如以下代码,在 Symbol 原型上 添加了 hello 方法,在任何 Symbol 类型变量都可以调用。

    Symbol.prototype.hello = () => console.log("hello")
    var a = Symbol("a")
    console.log(typeof a)
    a.hello()
    

    然后,有个问题,问题是:为什么给对象添加的方法能用在基本类型上?

    答案就是: . 运算符的功劳。 该运算符提供了装箱操作,它会根据我们使用的基本类型构造一个临时的对象,使得我们能够在基础类型上调用该对应对象的方法。

以上是关于JavaScript Object 对象 再解的主要内容,如果未能解决你的问题,请参考以下文章

UIApplication详解再解-备

小猿圈之Python 类的属性再解

如何查看javascript object对象的所拥有的属性值

如何查看javascript object对象的所拥有的属性值

JavaScript 对象(Object)

阮一峰老师的JavaScript标准参考教程:Object对象和Object方法