如题:我在看一片介绍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){
//...
}
这里[]里面变量的值就是属性名称。
8 回答4.6k 阅读✓ 已解决
6 回答3.3k 阅读✓ 已解决
5 回答2.8k 阅读✓ 已解决
5 回答6.3k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
4 回答2.7k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
[type.DONE_TODO]
使用变量值做属性名(state,id)
定义方法签名{}
方法体