Задать вопрос
r45her
@r45her
HTML-верстальщик / Frontend разработчик

Что делает эта конструкция в jquery?

$('.селектор')[
действие
]('класс');
  • Вопрос задан
  • 589 просмотров
Подписаться 3 Простой Комментировать
Решения вопроса 1
rockon404
@rockon404
Frontend Developer
Такой вариант записи используют в JS, когда надо получить ключ или вызвать функцию с помощью переменной.
Это возможность самого языка, а не конструкция jquery.
var foo = {
  bar: 'bar value',
};

console.log(foo.bar);
// => bar value

console['log'](foo['bar']);
// => bar value


Разберем ваш пример. Такая запись:
var action = 'addClass';

$('.some-selector')[action]('some-class');

равносильна такой:
$('.some-selector').addClass('some-class');

То же самое для объекта:
var key = 'name';

var obj = {
  name: 'Tom',
  age: 24,
};

console.log(obj[key]);
// => Tom

console.log(obj.name);
// => Tom

console.log(obj[key] === obj.name);
// => true

key = 'age';

console.log(obj[key]);
// => 24


Так же есть случаи, когда к ключу можно обратиться только таким способом:
var obj = {
  'three words key': 'value',
};

console.log(obj['three words key']);

// => value
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы