10

I have the following code:

var formSubmitHandler = function (link, form) {

    //e.preventDefault();
    var $form = form;
    var val = $form.valid();
    var action = $(form).data('action');
    var entity = $(form).data('entity');

Do I need the line "var $form = form"? Can I just later on do "var val = form.valid(); ?

It's not my code so I am wondering why the developer added the $ before the form and assigned it?

Update:

Thanks for all your replies. If as has been said it's just to indicate that it's a jQuery variable then could I just remove that line by changing the function parameters to (link, $form) ?

2
  • 2
    possible duplicate of Why would a JavaScript variable start with a dollar sign? Commented May 4, 2012 at 6:05
  • Sometimes, the $ before a variable name is to indicate that it is a jQuery object and not, say, a raw DOM element. That is, you might say var $this = $(this) with the $ in front to indicate that it's a jQuery object. On the other hand, you might have var element = document.getElementById('test'). It's all up to the developer, of course. Commented May 4, 2012 at 6:05

4 Answers 4

12

$ and jQuery are basically the jQuery instance.

It's good to understand that $( < place something here >) is a jQuery function call and $your_variable_name is just a variable with a dollar.

Some people use $ in their own variables to indicate that it is a jQuery object. With this naming convention, your source code would like this.

var formSubmitHandler = function (link, form) {
    var $form = $(form);
    var val = $form.valid();
    var action = $form.data('action');
    var entity = $form.data('entity');
Sign up to request clarification or add additional context in comments.

2 Comments

Some people use $ in their own variables to indicate that it is a jQuery object. just to note that it's used also in plain JS to indicate it's an HTMLElement reference.
I think it is very important to point out that $ is not a jQuery thing. It is used by jQuery...often.
3

No, you don't have to use the $ sign. It's just an aesthetic choice usually.

In your example code above, the function's argument is named form function (link, form). Inside the function, the new variable being declared has a $ to it so as to distinguish it from the argument variable form.

Comments

3

That is not neccessary. The dollar sign before a variable is most of the times used as an indication it is a JQuery variable. JQuery uses the dollar sign as a shortcut. Using it in a variable name has no extra meaning other than the aesthetic meaning for the developer that it is a JQuery object.

1 Comment

To clarify for others: The dollar sign is the variable.
0

It has become best practice to use the $ sign to help you distinguish between Javascript variables representing regular DOM elements (and every other data type) and variables that hold a reference to a jQuery object. For the latter you use the $ sign.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.