Да, в JavaScript можно вызывать класс как функцию, без использования метода `new`. Для этого необходимо определить класс как функцию, которая внутри себя создает новый экземпляр объекта и возвращает его. Например:
```javascript
function Foo(value) {
return new Foo.prototype.init(value);
}
Foo.prototype.init = function(value) {
this.value = value;
}
var obj = Foo('John');
console.log(obj instanceof Foo); // true
console.log(obj.value); // 'John'
```
Таким образом, вызывая `Foo('John')`, мы создаем новый экземпляр объекта класса `Foo` без использования оператора `new`.
Если же требуется передавать параметры при вызове класса через `Foo('John');` без оператора `new`, то можно немного изменить код:
```javascript
function Foo(value) {
if (this instanceof Foo) {
this.value = value;
} else {
return new Foo(value);
}
}
var obj = Foo('John');
console.log(obj instanceof Foo); // true
console.log(obj.value); // 'John'
```
Таким образом, при вызове `Foo('John')` без оператора `new`, будет создан новый экземпляр объекта класса `Foo` с переданным параметром.