Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8241829
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 7, 20262026-06-07T20:57:42+00:00 2026-06-07T20:57:42+00:00

I have the following code: function Notification(type) { switch (type) { case success: notificationID=not1;

  • 0

I have the following code:

function Notification(type) 
{
    switch (type) 
    {
        case "success":
           notificationID="not1";
           break;
        case "error":
           notificationID="not2";
           break;  
    }

    setNotificationTimeoutId = setTimeout(function () {
        jQuery('#' + notificationID).fadeOut(200, function () {
            var notification = document.getElementById(notificationID);
            if (notification) 
            {
                jQuery(notification.parentNode).remove();

                if (type == "success")
                        DoSomething();
            }

            setNotificationTimeoutId = null;
        });
    }, 5000);
}

My question is, if the function(Notification) gets called on a click event, and if it gets called two times(first with Notification(“success”) then with Notification(“error”)) by two click events, is it possible that the second function call changes the type variables value for the first function call?

For example: when the first call(one with success) enters the function inside the setTimeout(a second call to Notification already been made with type = “error”) it sees the variable ‘type’ as “error” even though this call was the first and it wass called with type = “success”?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-07T20:57:44+00:00Added an answer on June 7, 2026 at 8:57 pm

    if the function Notification gets called on a click event, and if it gets called two times (first with Notification("success") then with Notification("error")) by two click events, is it possible that the second function call changes the type variables value for the first function call?

    No. The type variable is a parameter and therefore scope-bound to your function. It’s value won’t change in subsequent calls, every function call creates a new instance of this variable and has no access to others.

    Your anonymous function for the timeout has a scope which is a “subscope” of Notification‘s one, so it will always access the right type variable.

    But your notificationID is a global variable (not local-scoped), and the same variable instance will be used by all calls to Notification and from all timeouts. So it will happen that the second call to Notification changes it before the timeout from the first accesses it. To fix this, add the var keyword.

    Or, as setNotificationTimeoutId is also in an outer scope and can be accessed from both calls, you could (should?) clear any active timeouts before creating the new one, by adding the following line:

    clearTimeout(setNotificationTimeoutId);
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have the following code: <script language=javascript> function add(idautomobile,marque,model,couleur,type,puissance,GPS){ $(#notification).ajaxStart(function(){ $(this).empty().append(<center><br/><img src='img/ajax-loader.gif'></center>); }); $.ajax({
I have the following code: function isValidAuthor($authorID){ $query = SELECT * FROM jos_users WHERE
I have the following code: function build_all_combinations(input_array){ array = [1,2,3] limit = array.length -
I have the following code: function Person(){ this.age = 30; } function Stats(){ this.age
I have the following code function generate_pdf() { $fdf_data_strings = $this->get_hash_for_pdf(); #$fdf_data_names = array('49a'
I have the following code: function toggleChecked(status) { $(.checkbox).each( function() { $(this).attr(checked,status); }) }
I have the following code: function show(){ var a=document.getElementById('somediv').style.display; a=block; } The above code
Suppose I have the following code function myFunction(param, callback) { ... if (err) {
I have the following code: protected function safePath($path) { $path = (string) $path; $path
I have the following code: $(function () { $(#ARO).load('/DA.aspx?section=ARO #ARO', function() { DoSomething1(); });

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.