Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.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_Range_Classification - Fatal编程技术网

Javascript 如何将数值输入分类?

Javascript 如何将数值输入分类?,javascript,range,classification,Javascript,Range,Classification,我想创建一种优化的方法来对特定标签中的值进行分类 范例 输入:12.2,61,77.7 输出:“差”、“差”、“好” 我创建了一个简单的if,但可能存在一个更好的方法 let output = null; if (rating <= 60){ output = 'bad'} if (rating > 60){ output = 'poor'} if (rating > 70){ output = 'good'} if (rating > 90){ output = 'ex

我想创建一种优化的方法来对特定标签中的值进行分类

范例

输入:12.2,61,77.7 输出:“差”、“差”、“好”

我创建了一个简单的if,但可能存在一个更好的方法

let output = null;
if (rating <= 60){ output = 'bad'}
if (rating > 60){ output = 'poor'}
if (rating > 70){ output = 'good'}
if (rating > 90){ output = 'excellent'}
let output=null;
如果(评级60){输出='poor'}
如果(评级>70){输出='good'}
如果(评级>90){output='excellent'}

一个更好的方法是创造性地使用
开关

var输出=null;
var rating=parseInt(提示(“评级”);
开关(真){
病例(90级):
输出=‘优秀’;
打破
案例(评级>70):
输出=‘良好’;
打破
案例(评级>60):
产出='差';
打破
}
控制台日志(输出)您可以使用并迭代一组对象来进行评级。优点是一个良好的可维护对象

功能等级(v){
var评级=[{value:60,标签:'bad'},{value:70,标签:'poor'},{value:90,标签:'good'},{value:Infinity,标签:'excellent'}],
标签;
评级。部分(功能(a){

如果(v一种快速的方法,如果你的记忆力好的话

var限制=[60,70,90100],
费率=[“差”、“差”、“好”、“优秀”],
等级=限制。减少((g,c,i,a)=>i?g.concat(数组(c-a[i-1])。填充(速率[i]))
:g.concat(数组(c).填充(速率[0]),[]),
注=[12.2,61,77.7,89.5];

notes.forEach(n=>console.log(grades[Math.round(n)]);
阅读模糊逻辑。有些概念有助于this@Swift模糊逻辑有什么帮助呢?如果你需要一种统一的方法来定义模糊集,有一种叫做隶属函数的东西。不过在你的例子中,看起来你需要严格的“质量”界限级别。对于一个简单的问题来说,解决方案太复杂了。但是谢谢。我发现了这个关于这个主题的搜索。如果您对这个库有一些要求,我很乐意为es6 fuzz的未来发展提供一些想法
ratings = [
    { value: 60, label: 'bad' },
    { value: 70, label: 'poor' },
    { value: 90, label: 'good' },
    { value: Infinity, label: 'excellent' }
]