gpt4 book ai didi

javascript - 如果在 javascript 中一切都是 "object",那么 "creating objects"不是多余的吗?

转载 作者:行者123 更新时间:2023-11-29 18:14:53 25 4
gpt4 key购买 nike

根据互联网上的许多教程和人们的说法,我听说过“javascript 中的一切都是对象”。但是,我也很清楚几种“创建对象”的方法,例如构造函数、工厂或对象字面量。

我不明白的是...如果“一切都是对象”,为什么我必须“创建一个”?变量的创建不就是“对象”的创建吗?函数的创建不就是对象的创建吗?

当我们说我们在“创建对象”时,我们真正在创建什么?

最佳答案

What I don't understand is...if "everything is an object" why should I have to "create one"?Isn't the creation of a variable the creation of "an object"?

不...变量有点像事物的名称。这就像在说“如果我们想要一个 child ,我们已经知道我们会叫它杰米,我们为什么还需要性?”

变量只是指向对象,而不是对象本身。评论也不是对象。 for 关键字、花括号和赋值运算符 = 也不是。事实上,JavaScript 中的大多数东西实际上都不是对象。

但是,您可以分配给变量的所有内容都是。除了整数。和其他数字。和真值。还有一些我们称之为“原始类型”的东西。然而,它们的行为有点像对象(例如,您可以对它们调用方法)。所以……不是几乎所有的东西。

所以...当您说 var a = {} 时,您所做的实际上...

  • 创建一个空对象,{}
  • 声明一个变量a
  • 告诉变量 a 它应该指向那个空对象。

当你说 var b = a 时,你说“我想要一个变量 b,我希望它指向相同的东西 a 已经是了。这就像在说“我们有 John,就是这个人。我们也称他为‘Prettyboy’吧。”从那时起,你对同一个物体有两个名字。但是给 John 另一个名字并不能造就另一个人。

关于javascript - 如果在 javascript 中一切都是 "object",那么 "creating objects"不是多余的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24113314/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com