spok.js
function needRecurseArray(arr) {
  for (var i = 0; i < arr.length; i++) {
    var el = arr[i]
    if (typeof el !== 'number' && typeof el !== 'string' && el != null) return true
  }
  return false
}
function needRecurseArray(arr) {
  for (var i = 0; i < arr.length; i++) {
    var el = arr[i]
    if (typeof el !== 'number' && typeof el !== 'string' && el != null) return true
  }
  return false
}
function needRecurseArray ( arr ) { for ( var i = 0 ; i < arr . length ; i ++ ) { var el = arr [ i ] if ( typeof el !== 'number' && typeof el !== 'string' && el != null ) return true } return false }
only recurse into arrays if they contain actual specs or objects
only recurse into arrays if they contain actual specs or objects