@Encoders

Как работает toString в js?

var user = {

  firstName: 'Василий',

  toString: function() {
    return 'Пользователь ' + this.firstName;
  }
};

console.log(user);

Почему выводит не то что в функции toString, а сам объект? Как это устроено в js?
  • Вопрос задан
  • 153 просмотра
Решения вопроса 2
AleksandrB
@AleksandrB
Совсем недавно вывел "Hello world"
Потому что toString - это метод, метод вызывается когда к нему обращаешься. Что бы получить результат выполнения метода объекта нужно к нему обратиться
console.log(user.toString());
Ответ написан
space2pacman
@space2pacman
Просто царь.
function validator(value) {
    return {
      equal(array) {
    	if(array.toString() === value.toString()) {
      	  return true;
        } else {
      	  return false;
        }
      },
      isArray() {
    	if(Array.isArray(value)) {
      	  return this;
        } else {
      	  return false;
        }
      },
      isString() {
    	if(typeof value === "string") {
      	  return true;
        } else {
      	  return false;
        }
      },
      isNumber() {
    	if(typeof value === "number") {
      	  return true;
        } else {
      	  return false;
      }
    }
  }
}

console.log(validator('1').isArray()); // false
console.log(validator([]).isArray().equal([1, 2, 3])); // false
console.log(validator([1, 2, 3]).isArray().equal([1, 2, 3])); // true
console.log(validator('1').isString()); // true
console.log(validator('1').isNumber()); // false
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Artezio Нижний Новгород
от 130 000 до 180 000 ₽
Artezio Москва
от 160 000 до 220 000 ₽
Sportrecs Москва
от 150 000 до 200 000 ₽
03 дек. 2020, в 23:48
1500 руб./в час
03 дек. 2020, в 22:34
500 руб./за проект
03 дек. 2020, в 22:19
150000 руб./за проект