让我们说我有变量" a,b,c,d,e,f"我想检查它们中的任何一个是否有大于10的值。
var myvars = [a,b,c,d,e,f]
if((Any value in these variables) > 10) {
//do something
}
我搜索过,但我找不到比逐一检查它们更短的方法。任何想法都会让我高兴。
答案 0 :(得分:5)
var numbers = [1, 5, 7, 3, 9];
var max = Math.max.apply(Math, numbers);
if(max > 10) {
// contains a number that is greater than 10
}
或简短形式:
var numbers = [1, 5, 7, 3, 9];
if(Math.max.apply(Math, numbers) > 10) {
// contains a number that is greater than 10
}
答案 1 :(得分:1)
使用数组的some
方法
if (myvars.some(function(x) {
return x > 10;
})) {
// do something
}
答案 2 :(得分:0)
您可以在数组上使用过滤方法。
function customFilter(e) {
return e > 10;
}
var filtered = [12, 5, 8, 130, 44].filter(customFilter);
答案 3 :(得分:0)
我使用underscore some进行此类遍历/操作
var myvars = [a,b,c,d,e,f];
if(_.some(myvars,function(element) { return element>10; })) {
//something
}
它会在数组上委托一些(如果不是的话,它仍然可以工作)。您也可以在对象上使用它。
答案 4 :(得分:0)
试试这段代码:
void Main()
{
int a = 1;
int b = 2;
int y = 23;
int z = 24;
List<int> letterAsNumber = new List<int>{a,b,y,z};
var over10 = letterAsNumber.Where( r => r > 10 ); //here
foreach( int o in over10 )
Console.WriteLine(o);
}
如果您正在使用visual studio并且点击了点,则可以看到更多选项,例如.ToList()。