метод is not a function, когда массив объектов

82
07 марта 2022, 21:50
class CityMap {
    constructor (city, latitude, longitude) {
        this.city = city;
        this.latitude = latitude;
        this.longitude = longitude;
    }
      TestMethod (){
          console.log("hello")
      }
}
let ObjArrayCityMap = [
        new CityMap( "Nashville, TN", 36.17, -86.78),
        new CityMap( "New York, NY", 40.71, -74.00),
        new CityMap( "Atlanta, GA", 33.75, -84.39),
        new CityMap( "Denver, CO", 39.74, -104.98),
        new CityMap( "Seattle, WA", 47.61, -122.33),
        new CityMap( "Los Angeles, CA", 34.05, -118.24),
        new CityMap( "Memphis, TN", 35.15, -90.05),
    ];
ObjArrayCityMap.TestMethod()
console.log(ObjArrayCityMap)

Метод "TestMethod" выдает ошибку при выводе, "ObjArrayCityMap.TestMethod is not a function", такая проблема, только при массиве объектов, не могу понять почему.

Answer 1

У элементов массива такой метод есть. У самого массива - нет.

class CityMap { 
  constructor(city, latitude, longitude) { 
    this.city = city; 
    this.latitude = latitude; 
    this.longitude = longitude; 
  } 
  TestMethod() { 
    console.log("Hello,", this.city) 
  } 
} 
 
let ObjArrayCityMap = [ 
  new CityMap("Nashville, TN", 36.17, -86.78), 
  new CityMap("New York, NY", 40.71, -74.00), 
  new CityMap("Atlanta, GA", 33.75, -84.39), 
  new CityMap("Denver, CO", 39.74, -104.98), 
  new CityMap("Seattle, WA", 47.61, -122.33), 
  new CityMap("Los Angeles, CA", 34.05, -118.24), 
  new CityMap("Memphis, TN", 35.15, -90.05), 
]; 
ObjArrayCityMap.forEach(item => item.TestMethod());

READ ALSO
Получение данных из JSON в js

Получение данных из JSON в js

Задача таковаЕсть функция, которая читает JSON файл, и выдаёт/возвращает его содержимое

159
Фильтрация массива объектов

Фильтрация массива объектов

Необходимо фильтровать массив arr1 по id, которые соответствует itemIds в массиве объектов arr2

98
Тип данных в JS

Тип данных в JS

Есть часть сайта для регистрации (человек в форме заполняет данные о количестве людей и часов):

141
Как создать перменную в JavaScript?

Как создать перменную в JavaScript?

Как в JS с помощью "if" создавать переменные? Мне нужно, чтобы при соблюдении определеной условии создавалась перемнная

185