Whatever message this page gives is out now! Go check it out!

ArraySome

Last update:
Jun 9, 2026
Note:
You can also set the maximum thread count in ColdFusion Administrator. Click Server Settings > Settings and specify the number of threads in Default Maximum Thread Count For Parallel Functions.

Description

Determines if at least one element in the array satisfies a given condition.

Returns

True if at least one element matches a condition; false, otherwise.

Syntax

arraySome(array, function(item [,index, array]){} [, parallel] [, maxThreadCount])
Member function
arrayObj.Some(callback)

History

ColdFusion (2021 release): Introduced the following parameters:
  • parallel
  • maxThreadCount
ColdFusion (2018 release) Update 5: Added the function.

Parameters

Parameter
Required/Optional
Description
array
Required
Array in which at least one element is to be searched.
callback
Required
Function to encapsulate the criteria.
parallel
Optional
True if you want to enable parallel programming.
maxThreadCount
Optional
The number of threads the function can execute. The number of threads must be between 1-50. If the value exceeds 50, there is an exception.

Example

Example 1
<cfscript>
 array1=[1,2,3,4,5]
 isEven=(x)=>return x%2==0
 writeOutput(arraySome(array1,isEven)) // Returns TRUE
</cfscript>
Example 2
<cfscript>
 myarray=[2,4,6,8,10,12,14]
 isGT10=(element,index,array)=>return element>10
 writeoutput(arraySome(myarray,isGT10)) // Returns True
 // Using member function
 writeoutput(myarray.Some(isGT10)) // Returns True
</cfscript>
Example 3 - Using named parameters
<cfscript> 
 myarray=[2,5,8,1,4] 
 callback=function(element,index,array){ 
  return element>10 
 } 
 result=ArraySome(array=myarray,callback=callback) 
 writeOutput(result) // Returns False 
</cfscript>
Example 4 - Using arrow function
<cfscript> 
 myarray=[2,5,8,1,4] 
 callback=(element,index,array)=>{ 
  return element<10 
 } 
 result=ArraySome(array=myarray,callback=callback) 
 writeOutput(result) // Returns True 
</cfscript>
Member function
<cfscript> 
 array1=[1,2,3,4,5] 
 isEven=(x)=>return x%2==0 
 writeOutput(array1.Some(isEven)) 
</cfscript>
Using parallelization
<cfscript> 
  for(i=1;i<=10000;i++){ 
     
  if(i == 4500){ 
    arr[i]=0; 
  } 
  else 
    arr[i]=i*2; 

 
  result = arr.some(function(item){ 
 
  if (item Mod 2 == 0) 
    return false 
return true 
 
},true,20) 
 
writeoutput(result) 
 
</cfscript>

Share this page

Was this page helpful?
We're glad. Tell us how this page helped.
We're sorry. Can you tell us what didn't work for you?
Thank you for your feedback. Your response will help improve this page.

On this page