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 4581034
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 21, 20262026-05-21T20:52:00+00:00 2026-05-21T20:52:00+00:00

Just wondering if I’m missing something or not but I attempted to do the

  • 0

Just wondering if I’m missing something or not but I attempted to do the following:

(function() {
    var thing = function() {
        var doIt = function() {
            console.log("just do it");
            this.updateValue(5);
        };

        return {
            updateValue: function(val) {
                console.log('updating value: ' + val);
            },

            go: function() {
                doIt();
            }
        }
    };

    var t = thing();
    t.go();
}())

This results in “just do it” showing up in the console followed by an error b/c it says “updateValue” is not a function.

I was wondering, can an internal/private function (e.g. “doIt”) invoke a public function (e.g. “updateValue”)? Perhaps this is just bad design and you should never really want to do this and I’ve actually refactored my code to avoid/not do this but I was curious if it was possible.

Thanks in advance.

  • 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-05-21T20:52:01+00:00Added an answer on May 21, 2026 at 8:52 pm

    Either use call/apply to explicitly specify the context for this (like @SLaks and @Alnitak) mentioned or else define the function at the beginning and then add it as a property to the returned object:

    var thing = function() {
        var updateValue = function () { /* */ },
            doIt = function() {
                console.log("just do it");
                updateValue(5);
        };
    
        return {
            updateValue: updateValue, // minor duplication here
            go: function() {
                doIt();
            }
        };
    };
    

    If the minor duplication annoys you, you can also do this:

    var thing = function() {
        var exposed = {
            updateValue: function(val) {
                console.log('updating value: ' + val);
            },
            go: function() {
                doIt();
            }
        }, doIt = function() {
            console.log("just do it");
            exposed.updateValue(5);
        };
    
        return exposed;
    };
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Just wondering why something like this doesn't work: public function address($name){ if(!isset($this->addresses[$name])){ $address =
Just wondering I have searched but I have not found an answer. My question
Just wondering why people like case sensitivity in a programming language? I'm not trying
Just wondering what the difference between MFC control messages prefixed with the following is:
Just wondering what the best (fastest execution time) method for translating the following SQL
Just wondering if there is anyway to represent the following code in C# 3.5:
Just wondering if anyone would be able to help with the following VBScript script
Just wondering if its possible to convert the following to an IF statement in
Just wondering how difficult it would be to convert the following library to Objective-C
Just wondering if there is a way you can attach a function while startDrag

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.