最近我一直在学习 Redux,在阅读文档时,我遇到了一个叫做 reducers 的东西。 根据doc ,
The reducer is a pure function that takes the previous state and an action, and returns the next state.
即(previousState, action) => newState
;
这听起来有点熟悉有限状态自动机,它采用当前状态和输入,然后转到下一个状态.
那么将 reducers 视为 FSA 是正确的还是有什么不同?
最佳答案
reducer 描述确定性状态转换,因此您认为它听起来类似于 FSA 是对的。
主要区别在于 reducer 仅描述确定性状态转换,它不限制可以传递的可能状态或操作。
reducer 可以传递无数种不同的状态,也可以传递无数种不同的 Action ,因此 reducer 本身并不能描述确定性状态自动机。
reducer 结合有限数量的状态描述和有限数量的可以传递给它的可能操作将共同构成确定性有限自动机的定义。
关于javascript - Redux 中的 reducer 是否代表 FSA?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51582646/