gpt4 book ai didi

javascript - Backbonejs - 我把计算放在哪里?

转载 作者:行者123 更新时间:2023-11-30 17:54:59 26 4
gpt4 key购买 nike

我可以在哪里进行一些计算,例如计算员工工资?是否需要使用外部文件,或者我可以使用模型、集合或 View ?

最佳答案

模型的属性表示数据实体(员工)的状态。它的方法应该改变数据实体的状态。所以模型的方法calculateSalary()使用 salary 可能是不错的选择属性(增加、减少、计算等)。

这是 OOP 中的一种常见方法。当你上课时Carspeed = 0 , 你可以调用它的方法 run()增加 speed (改变状态)。员工和他/她的想法相同salary .

var Person = Backbone.Model.extend();

var Employee = Person.extend({
defaults: {
hoursWorked: 0,
hourlyRate: 0,
salary: 0
},
initialize: function() {
Person.prototype.initialize.apply(this, arguments);
this.on('change:hoursWorked change:hourlyRate', this.calculateSalary);
this.calculateSalary();
},
calculateSalary: function() {
this.set('salary', this.get('hoursWorked') * this.get('hourlyRate'));
}
});

var driver = new Employee({
hoursWorked: 10,
hourlyRate: 15
});

console.log(driver.get('salary')); // 150

driver.set('hourlyRate', 25);
console.log(driver.get('salary')); // 250

driver.set('hoursWorked', 20);
console.log(driver.get('salary')); // 500

关于javascript - Backbonejs - 我把计算放在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18244980/

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