Быстрый способ - просто проверить длину массива и передать то, что вы хотите отобразить
//if it has any length display array as normal
//otherwise just pass empty string
console.log( x.length? x : "" );
Другой вариант - вы можете просто join()
элементы массива, которые дадут вам пустую строку для пустых массивов.и разделенный запятыми список для непустых
console.log(x.join())
Последний вариант заключается в использовании пользовательской функции проверки.console.log
в среде nodejs в конечном итоге вызывает util.inspect
или аналогичную нативную функцию для объектов.Из-за этого вы можете добавить пользовательскую функцию проверки , которая позволяет вам возвращать строку того, что вы хотите отобразить для этого объекта.
Итак, снова вы просто протестируете длину массива, вернув пустуюстрока в случае пустого массива или возврат того, что метод util.inspect
должен был бы вернуть оригинал
Array.prototype[util.inspect.custom] = function(){
if(!this.length){
return "";
}
//passe customInspect:false so the custom inspect method wont be called again
return util.inspect(this,{customInspect:false});
}
Конечно, этот метод будет влиять на все журналы, которые регистрируются или проверяются, поэтому используйте его только в случае необходимости.