🧙Конкурс сказок!
Создание сайтов и программирование
(OFF) Artem_Dainov 8 авг 2018

Классы в javascript

Доброго времени суток.
Тут пишу класс, который мне очень нужен.
Тут так получилось, что я не могу воспользоваться методом внутри класса, который не относится к данному классу.
Есть такой метод subster()
Он выводит символы с указанного индекса.
var str = "абвгдеёжзий";
alert(str.substr(2,4);

В классе у меня не получается данный метод использовать. Выдаёт ошибку type of error.
В чем причина?

Комментарии (10)

Ты открывашкой то какой открыл?
-1
Я создаю обычный класс, в нем создаю метод.
Про какую открывашку идёт речь?
Есть прога opt7
Хотя врядли найдешь
Скинь нумизмат весь
Будет время гляну
-1
Я не пользуюсь ide.
notepad и firefox вот все мои инструменты.
class my_class {
constructor() {}
my_method() {
var str = "АБЦДФГ";
alert(str.substr(0,2));
}
}

Что-то подобное. Главная суть, что у меня вызывает ошибку str.subster(0,2);
Хотя, если без класса, тогда всё хорошо.
Попробуй str.slice(0,2)
-1
Я не знаю языка javascript, но меня интересует как ты вызываешь метод своего класса? Ты создаёшь экземпляр класса или пытаешься вызвать свой метод напрямую? Напрямую я не знаю как это в javascript осуществляется, в java например что бы метод вызвать без создания экземпляра класса следует этот метод сделать статичным, то есть пометить меткой static
-1
Я не пользуюсь ide.
notepad и firefox вот все мои инструменты.
Очень зря! Конечно, тот же Notepad++ - очень хороший редактор исходного кода, но когда проект разрастается до десятков файлов с хитро-мудрыми взаимосвязями между ними - тот же Notepad++ и подобные ему редакторы начинают сдавать позиции. Полноценная IDE, например, PhpStorm (или WebStorm), умеет работать с включенными файлами (в смысле она правильно реагирует на имена функций/переменных и т.д., находящихся в подключаемом файле) и вообще предоставляет уйму возможностей!.. Даже по твоей ошибке IDE покажет не просто уведомление об ошибке, как тот же Notepad++ (если он её вообще обнаружит), а и все возможные подробности о ней и рекомендации по её исправлению!.. ;-)
В частности в JS я дуб-дубом, но несколько разбираюсь в программировании в общем.

Тут так получилось, что я не могу воспользоваться методом внутри класса, который не относится к данному классу.
Внутри класса возможно вызывать методы из другого класса, но только в том случае, если они объявлены как публичные (public)!

Есть такой метод subster()
Он выводит символы с указанного индекса.
А к какому классу он относится?

Выдаёт ошибку type of error.
В чем причина?
Из описания ошибки очевидно, что метод не поддерживает работу с данными полученного типа! Хотя как-то странно, ибо substr() должен работать исключительно со строкой и в твоём примере именно строку и получает!.. :-/
-1
class test{
substr(){
var a="abcdefghklmnop";
alert(a.substr(2,4));
}
}
var u = new test();
u.substr();
У тебя лишняя фигурная скобка.
class my_class {
constructor() {}
my_method () {
var str = "АБЦДФГ";
alert(str.substr(0,2));
}
}

new my_class().my_method();
Показать комментарий
Скрыть комментарий
Для добавления комментариев необходимо авторизоваться
Создание сайтов и программирование
Братва
Здесь все по понятиям: отчаянные перестрелки...
Тема: Светлая | Тёмная
Версия: Mobile | Lite | Touch | Доступно в Google Play