【发布时间】:2019-11-15 16:31:47
【问题描述】:
这听起来像是一个奇怪的问题,考虑到变量和类是完全不同的东西,但我来自 Java 背景(目前是副学士学位,三年级大学生),我一直在阅读 javascript 和观看视频.
关于 js 动画的视频以创建 vector 对象的介绍开始。他在自己的名为vector.js 的文件中定义了vector,并将其用作基本二维动画中粒子运动的基础。
代码如下:
变量向量 = { _x: 1, _y: 0, 创建:函数(x,y){ var obj = Object.create(this); obj.setX(x); obj.setY(y); 返回对象; }, setX:函数(值){ this._x = 值; }, 获取X:函数(){ 返回这个._x; },它继续为角度、长度等提供更多的 getter 和 setter。还定义了其他矢量运算的方法,例如交叉和点积。
我的问题是:
- 这与使用带有方法的类有什么不同?
- 这是可接受的/标准代码吗?
-作为标题的语法foo: function(args)是否与function foo(args)相同?
-你们都可以指点我解释在看似声明的变量中包含函数和参数的概念的资源吗?
我已经尝试查找有关的信息,但我不知道这种语法或用法在 js 中是否有名称。我在 Java 中没有见过这样的东西。我找不到任何信息。
干杯。
【问题讨论】:
-
你们能指点我解释这个概念的资源吗 - 这称为 Object Literal Notation 或 initializer notation。这是一个参考:developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
标签: javascript class oop syntax var