javascript - 第三个指定回调函数有什么用呢?是否是第一个参数`type`如果传递为`type1`那么就返回`red`颜色?如果是为何不直接就使用第一个示例,何必画蛇添足?

 

问题描述:

我看到有这样的示例:

// 1.使用常量指定固定的属性值。
color('red');

// 2.使用数组进行数据映射。
color('type', ['red', 'blue']);

// 3.使用回调函数进行数据映射。
color('type', function(type) {
    if(type == 'type1') {
      return 'red';
    }
    return 'blue';
});

我没有看明白第3个示例,第2个可以认为是配置渐变色,但是第三个指定回调函数有什么用呢?是否是第一个参数type如果传递为type1那么就返回red颜色?如果是为何不直接就使用第一个示例,何必画蛇添足?


 

第 1 个答案:

因为有时候你写代码的时候不知道该用什么颜色,需要结合运行时的状态,通过计算得到。


 

第 2 个答案:

有时候可以这样统一配置

const types = [ /*...*/ ]
const getColorOfType = t => {
    return /*...*/
}
for (const t of types) color(t, getColorOfType)

示例 3 感觉确实没什么用,但是有时候回调里面需要用到一些别的状态


安装了一个 kali ,自带的 shell 就是 zsh,并且被配置的很漂亮在终端输入 git add . && git commit -m "feature: dnspython==2 ...