如题:我在看一片介绍vuex的文章的时候发现有段代码
[type.DONE_TODO](state,id){
//...
}
这种[](){}的表达式代表什么意思?如何运作的?
我基于普通的函数表达式做了一个大胆的推测:
[]这个指代某个对象的一个属性变量,结合后面的函数表达式写法,组成了一个变量函数表达式。
不知道是不是这个意思的?
如题:我在看一片介绍vuex的文章的时候发现有段代码
[type.DONE_TODO](state,id){
//...
}
这种[](){}的表达式代表什么意思?如何运作的?
我基于普通的函数表达式做了一个大胆的推测:
[]这个指代某个对象的一个属性变量,结合后面的函数表达式写法,组成了一个变量函数表达式。
不知道是不是这个意思的?
const type.DONE_TODO = 'functionName'
[type.DONE_TODO](state,id){
//...
}
等价于
functionName:function functionName(state,id){
}
差不多就是你理解的那样,因为平时我们写对象时,对象的属性都是些死的,比如:
var a = { name: 'XXX' }
那怎么让属性是动态的呢?
[type.DONE_TODO](state,id){
//...
}
这里[]里面变量的值就是属性名称。
10 回答10.3k 阅读
4 回答8.6k 阅读✓ 已解决
7 回答10.7k 阅读
2 回答11.2k 阅读✓ 已解决
6 回答2.5k 阅读
5 回答4.2k 阅读✓ 已解决
4 回答2.5k 阅读✓ 已解决
[type.DONE_TODO]
使用变量值做属性名(state,id)
定义方法签名{}
方法体