secr
secr

Reputation: 644

javascript or jquery: show multiple variables in one alert

Alert command assumes this structure:

alert (variable)

How to show multiple variables in a single alert?

Upvotes: 8

Views: 92858

Answers (4)

Erik P
Erik P

Reputation: 129

This works for me:

window.alert = function (native) {
    return function (str) {
        var argsArray = Array.prototype.slice.call(arguments);
        var s = "";
        for (var i = 0; i < argsArray.length; i++) {
            msg = argsArray[i];
            if (typeof (msg) == 'object') msg = JSON.stringify(msg);
            s += msg;
            if (i < (argsArray.length - 1)) s += ',  ';
        }
        native(s);
    }
}(window.alert);

Try this:

alert("This", "That", {"this":"that"});

Upvotes: 2

nnnnnn
nnnnnn

Reputation: 150050

Alert command assumes this structure: alert (variable)

No, alert() assumes this structure:

    alert(some expression)

...where "some expression" is pretty much any JavaScript expression - if the expression is not a string it will be converted (though in some cases, e.g., for some objects the result might not be very meaningful).

So:

alert(variable);
alert("string literal");
alert(variable1 + variable2 + variable3);
alert(variable1 + ", " + variable2);
alert(resultOfFunctionCall());
alert([1,2,3]);
alert(whatever() + "else" + you.can.think + "of");

Or even:

alert();   // displays "undefined"

Note that if you are trying to debug your code you are better off using console.log() than alert(). If you are trying to produce a dynamic message to show the user just concatenate variables as needed, e.g.:

alert("Hello there " + name + ". Welcome.");

Upvotes: 32

Harry
Harry

Reputation: 89760

The below is how to do it:

var a = "Hello";
var b = "World!";

alert(a + b);

Upvotes: 4

Raptor
Raptor

Reputation: 54222

Do you mean this :

alert (variable1 + ', ' + variable2);

No jQuery is required in this case.

Upvotes: 6

Related Questions