0

私はこれが初めてで、誰かがここで私を助けてくれたらありがたいです.

プロジェクトの要件により、エンティティ クラスを Java から JavaScript に再作成しようとしています。

残っている 1 つの問題は、Java エンティティ間の関連付けまたは依存関係を JavaScript で再作成する方法です。

例えば。次のフィールドを持つエンティティ従業員を作成したとしましょう

従業員: eId、eName、rId(ロール エンティティの rId に関連付けられています) ロール: rId、rName。

では、2 つのファイル employee.js と role.js を作成する JavaScript で同じことを行うにはどうすればよいでしょうか?

4

2 に答える 2

0

たぶん、あなたはこのようなことを意味します

function Role(roleId, roleName) {
    this.id = roleId;
    this.roleName = roleName;
    Role.roles[roleId] = this;
}
Role.roles = {};

function Employee(employeeId, employeeName, roleId) {
    this.employeeId = employeeId;
    this.employeeName = employeeName;
    this.roleId = roleId;
}
Employee.prototype = Object.create(null, {
    role: {
        configurable: true,
        enumerable: true,
        get: function () {return Role.roles[this.roleId];},
        set: function (role) {return Role.roles[this.roleId = role.id]}
    }
});

var man   = new Role(0, 'Romeo'),
    woman = new Role(1, 'Juliet');
var actor   = new Employee(0, 'John Smith', 0),
    actress = new Employee(1, 'Jane Doe', 1);

actor;      // Employee {employeeId: 0, employeeName: "John Smith", roleId: 0}
actor.role; // Role {id: 0, roleName: "Romeo"} === Role.roles[0];
于 2013-08-08T15:46:44.343 に答える
-1

このように、JavaScript オブジェクトを作成する必要があります。

var employee = {eId: 1, rId: 1};
var role = {rId: 1, rName: 'Role'};
于 2013-08-08T15:00:56.990 に答える