Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
比较Javascript中与结果相对应的变量_Javascript_Logic - Fatal编程技术网

比较Javascript中与结果相对应的变量

比较Javascript中与结果相对应的变量,javascript,logic,Javascript,Logic,我对如何用Javascript编写逻辑感到着迷和好奇 例如,我选择瓷器作为皮肤类型,选择灰金色作为头发,选择灰色作为眼睛。浅色的夏季调色板(浅绿色)对我来说是个好兆头,因为每种颜色都有一个浅绿色的匹配 到目前为止,我已经将所有调色板存储在一个数组中,并为每个皮肤/头发/眼睛变量分配了一个对象及其相应的色点。有没有更好的方法来解决这个问题 谢谢!当我的应用程序完成后,你将是第一个试用它的人:)你可以用字典来完成 当您单击按钮瓷器时,将显示皮肤字典中的颜色值: skin['porcelain']

我对如何用Javascript编写逻辑感到着迷和好奇

例如,我选择
瓷器
作为皮肤类型,选择
灰金色
作为头发,选择
灰色
作为眼睛。浅色的夏季调色板(浅绿色)对我来说是个好兆头,因为每种颜色都有一个浅绿色的匹配

到目前为止,我已经将所有调色板存储在一个数组中,并为每个皮肤/头发/眼睛变量分配了一个对象及其相应的色点。有没有更好的方法来解决这个问题


谢谢!当我的应用程序完成后,你将是第一个试用它的人:)

你可以用字典来完成

当您单击按钮瓷器时,将显示皮肤字典中的颜色值:

skin['porcelain']

对于所有其他选项,依此类推。

如果将调色板存储为数组,然后将肤色/头发/眼睛颜色存储为对象,并将关键点作为不同选项,则可以轻松使用这些数组的交点来查找最佳调色板。例如,以下输出
“轻夏”

function commonPalette(skinTone, hairColor, eyeColor) {
    return skinTone.filter(function (color) {
        if (hairColor.indexOf(color) !== -1 && eyeColor.indexOf(color) !== -1) {
          return true;
        }
        return false;
    });
}

var skinTone = {
        'porcelain': ['clear spring', 'clear winter', 'warm spring', 'light summer', 'light spring']  
    },
    hairColor = {
        'ash blonde': ['light summer', 'light spring']
    },
    eyeColor = {
        'grey': ['cool summer', 'light summer', 'soft summer']
    };

commonPalette(skinTone['porcelain'], hairColor['ash blonde'], eyeColor['grey']);

这个太宽了。。。你到底想让你的应用程序做什么?