Вы не можете передать имя переменной конструктору. Вместо этого вы можете преобразовать array
имен переменных в массив objects
let names = [
'name1',
'nameff'
]
let objects = names.map(name => myObjConstr(name));
function myObjConstr(name){
this.name = name;
console.log(this.name);
}
Вы пробовали закрыть и снова открыть проект? В памяти хранятся только типы из открытых проектов, и обновление происходит, когда вы нажимаете Shift + Ctrl + T в первый раз во вновь открытом проекте.
Правка для добавления: Ctrl + Shift + R также отображает типы (вместе с все остальное), но он также поддерживает функцию Camel-case для быстрого поиска типов Java.
попробуйте запустить eclipse с флагом -clean, вы можете добавить его в свой eclipse.ini, который можно найти в том же каталоге, что и eclispe.exe, или если вы запустите eclipse с помощью летучей мыши или сценарий оболочки, добавьте его в качестве аргумента запуска, например, eclipse -clean.
Очистка приведёт в порядок ваше рабочее пространство и заставит eclipse JDT пересчитать типы. У меня была проблема с файлами .snap (которые, кажется, создаются при грязном отключении), которые, похоже, повреждают мое рабочее пространство, пока я их не очищаю, не так давно eclipse потерял класс Object !! сделал несколько интересных ошибок!
(Предупреждение: впереди бесстыдный маркетинг)
Если вам нравится эта функция, вам понравится nWire . nWire позволяет, среди прочего, быстро искать не только типы, но и любые возможные элементы Java, такие как метод или поле. Он также использует вид навигатора, который не является модальным. После поиска вы можете очень быстро и легко увидеть ассоциации классов. Посмотрите видео на нашем сайте .
Подобные проблемы возникают у меня часто. Я попробовал ваше решение, заметил, что он, похоже, перестроил свой поисковый индекс, но я все еще не мог найти ни одного из своих классов. Затем я взглянул на маленькую зеленую стрелку в правом верхнем углу этого диалога и заметил, что у меня выбран рабочий набор, принадлежащий другому проекту. Мне кажется немного глупым, что Eclipse не предупреждает вас об этом или о чем-то еще, поскольку это может быть очень раздражающей мелочью, о которой часто забывают (по крайней мере, меня ;-)).
В любом случае, нажал «Отменить выбор рабочего набора», и бац, я снова могу найти свои классы. Подумал, что добавлю это здесь, поскольку другие могут совершить ту же ошибку.