javascript - 面向对象与点分符号

标签 javascript

知道下面的例子是用来实例化一个对象的,但我想知道我什么时候会用到它:

function Person(){
  this.age = 0
}

var p = new Person()

我是老派,但我写 JavaScript 的方式是这样的:

var person = {}
person.age = 0
person.myMethod = function() {
}

我想我永远不需要一个人对象的两个实例。我认为我正在做的是将老派思维应用于 JavaScript 的点分符号,而我从未在我的任何编程中真正使用过对象。

如果您提出一个使用对象的示例,而我的任务是解决相同的用例,那么我是否会按程序解决它?或者是否有一个用例表明面向对象显然是更好的解决方案?

最佳答案

如果你永远不需要一个 person 对象的两个实例,那么对 ES6 类,或者函数和 new,或者 function.prototype new 的值(以及所有的相关机制)在您需要时出现:

  • 有多个给定类型的对象

  • 判断给定对象是否为给定类型

  • 使用继承

  • 扩展一个已经存在的类型并查看这些扩展反射(reflect)在已经存在的对象中

如果您永远不需要做任何这些事情,那么使用对象文字和点符号来构造您的对象似乎是完全合理的。

关于javascript - 面向对象与点分符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46491518/

相关文章:

php - 下载文本文件而不是在浏览器中打开

javascript - 将鼠标悬停在与 Raphaël.js 关联的链接上时出现路径填充效果问题

javascript - 使用 jquery 多次对同一个 id 执行点击功能

javascript - 具有功能的树中的 Lodash 和 deepdash 过滤器

javascript - 如何通过 POST 传递 Javascript 变量以在 Flask 中使用?

javascript - JS指数曲线拟合

c# - 在 .Net 中打印

javascript - 在 d3 饼图中制作可滚动的工具提示

javascript - 悬停时暂停新闻 slider /股票行情指示器

javascript - 使用 jquery 从 select 中识别选项