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

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 26, 20262026-05-26T00:12:15+00:00 2026-05-26T00:12:15+00:00

I feel puzzled when I rethink of these two functions: The first one goes

  • 0

I feel puzzled when I rethink of these two functions:

The first one goes like this:

var test = [1,2,3];
var ele = test[0];
ele= 2;
alert(test[0]);

The result is 1. I think this is obvious. But when I meet this:

var test = [{id:1},{},{}];
var ele = test[0];
ele.id = 2;
alert(test[0].id);

The result turns to be 2
So could anyone tell me that how the javascript work when it happens like this in the object array?

  • 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-26T00:12:15+00:00Added an answer on May 26, 2026 at 12:12 am

    In JavaScript, objects are assigned by reference, rather than copied in memory. So if you assign an existing object to a different variable, both will point to the same object in memory. Modifications to either will therefore be reflected in both.

    var a = {id: 1, name: "bob"};
    var b = a;
    console.log(b.name); // bob
    b.name = "bill";
    console.log(a.name); // bill
    

    So in your example, executing ele.id = 2; operates on the memory location holding the object at test[0]. The change to the id property of that object is reflected in both variables referencing it (test[0], ele)

    Note that if you had assigned the entire array test to ele, modifying one of the array members would have been reflected in both test, ele since Arrays are objects in Javascript:

    var test = [1,2,3];
    // Assign array test to ele
    var ele = test;
    // Modify one member
    ele[0] = 2;
    alert(test[0]); // 2
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

(Feel free to skip the first two paragraphs :) I know this goes against
I feel like I am not writing this correctly and this is my first
I feel like such a noob asking this but, for some reason a horizontal
I feel like I've only ever seen this here on SO, but I can't
Feel free to close this one if it s a duplicate. I couldn't find
I feel like I'm taking 2 steps back with this question, but something is
I feel like I'm fairly close to this, but it's not quite right. I'm
i feel so stupid. I got this String: var myString = ({week:{@attributes: Some stuff}});;
Feel im being a little dense on this one, would be great if you
Feel like this is a long way round of doing it. dont think the

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.