В этом случае запятая отделяет две переменные, и это все, это то же самое, как написание
var join = require('path').join;
var pfx = join(__dirname, '../_certs/pfx.p12');
Вместо этого можно сделать
var join = require('path').join,
pfx = join(__dirname, '../_certs/pfx.p12');
В этом случае запятая просто seperator, так же, как это было бы литералом объекта или массивом.
Запятая Оператор, который является только оператором, когда он действует на два выражения, один на левой стороне и один справа, может использоваться, если вы хотите включить несколько выражений в местоположение, которое требует одно выражение.
Одним из примеров может быть в ответном заявлении
[1,2,3].reduce(function(a,b,i) {
return a[i] = b, a; // returns a;
},[]);
и т.д ...
Это ** есть ** запятая, но ** ** ** «запятая». – Pointy
@Pointy - На самом деле это правильно, в этом случае это просто сеператор. – adeneo
Ссылки на комментарий Понки: [грамматика оператора 'var' с использованием запятой (а не оператором запятой)] (http://www.ecma-international.org/ecma-262/6.0/#sec-variable-statement) и [оператор запятой] (http://www.ecma-international.org/ecma-262/6.0/#sec-comma-operator) –