在示例主干 Todo MVC 应用程序中遇到以下内容,它对我来说没有任何意义,谷歌搜索了一下,没有骰子,
在待办事项模型内有一个切换方法:
// Toggle the `completed` state of this todo item.
toggle: function() {
this.save({
completed: !this.get('completed')
});
}
我一直都明白!意思是“不”,这对我来说没有意义,因为我假设在触发切换事件时想要保存完成的状态。
我错过了什么?
最佳答案
基本原理: 假设,我们有一个方法,返回一个 bool 状态。
var state = obj.getState('completed');
如果getState
返回true
,则变量state
也为true
现在:
var state = !obj.getState('completed');
我们反转结果,这意味着:如果getState
返回true
,则变量state
设置为 false
。
为了实现像 true - false - true - false
这样的切换,我们可以这样做
a = !a
如果 a 为真,则为假,如果为假,则为真,等等
关于javascript - !this.get 在 Backbone todo MVC 应用程序中的含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21969922/