Учу JS. Правильно ли я понимаю?

Взял себя, тряпку, в руки и начал учить JS. Но хочется сразу понимать, правильно ли я делаю, и если нет, то сразу исправлять ошибки) вот собственно и первый вопрос)

Нужно мне вычислить высоту документа. Поискал и нашел вот такую конструкцию

function showHeight(element, height) {
      $("div").text("The height for the " + element +  " is " + height + "px.");
}

$("#getheight").click(function () {
      showHeight("document", $(document).height());
});


Россуждая логически с того что тут написано мы создаем функцию function showHeight()

далее мы вызываем функцию методом .click()
тоесть, при нажатии на элемент с ид "getheight" у нас срабатывает эта функция

и тут я запутался..
может скинете где почитать)
что значат атрибуты в скобках? а точнее как правильно их писать и использовать
высоту мы получаем с "$(document).height()" я так понимаю это есть в JS
"document" это элемент, которого мы хотим получить высоту?
то есть если мы напишем
showHeight(".content", $(document).height());
мы получим высоту элемента с классом ".content"
или правильно написать надо
showHeight(".content", $(".content").height());
??
дальше
function showHeight(element, height) {
      $("div").text("The height for the " + element +  " is " + height + "px.");
}


в скобках написано "(element, height)"
эти атрибуты мы прописываем сами, чтоб например, если брать данный пример, вывести их значения?
"$("div").text("The height for the " + element + " is " + height + "px.");"

и по логике если мы напишем без "(element, height)"
function showHeight() {
      $("div").text("The height for the " + element +  " is " + height + "px.");
}

то у нас просто ничего не будет выводится, если нам это не нужно, но полученные данные мы можем дальше использовать в коде? что то вроде создать свой var ?

Понимаю, что это все можно найти и в интернете, но при поиске, много источников, по разному это все пишут, и толком не понятно.. хорошо, если кто то тыкнет пальцем что я не правильно понимаю...
  • Вопрос задан
  • 317 просмотров
Пригласить эксперта
Ответы на вопрос 3
@IceJOKER
Web/Android developer
Если учите JS - учите JS, а не библиотеку jQuery , которая написана на JS.
После того как выучите хотя бы основы JS, тогда смотрите в сторону jQuery.

И не надо пытаться сразу все понимать, без граблей и ошибок все равно не выучите.

learn.javascript.ru - Good Luck
Ответ написан
aleksand44
@aleksand44
1) правильно написать надо
showHeight(".content", $(".content").height());
2) в скобках находятся аргументы функции , они видны только в функции во время её выполнения, если их конечно не записать в переменные
Ответ написан
AndyPike
@AndyPike
Программист, full-stack developer.
У вас, по правилам JS, первым аргументом в element идёт просто строка.
И используется исключительно для отображения в сообщении.

Вторым элементом идёт значение, вычисляемое до вызова функции.
И тоже используется исключительно для отображения в сообщении.

Если функция должна сама вычислять высоту элемента (в синтаксисе селекторов jQ), выводить её в блок и больше ничего, то так:

function showHeight(elementSelector) {
$("div").text("The height for the " + elementSelector + " is " + $(elementSelector).height() + "px.");
}

var jQ_selector='document';
//var jQ_selector='".content"';
//var jQ_selector='#services';

showHeight(jQ_selector);
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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