Problems with JS references

Source: Internet
Author: User

The following example uses JS for example, to other languages, such as Python.
var Example = funcion () {
this.table = {};
}


Example.prototype.getTable = function () {
return this.table;
}






var ex1 = new Example ();


var table = ex1.gettable ();
Table.push (' value1 ');


var table = ex1.gettable ();
The GetTable method returns a reference to the next sentence,table.push (' value1 ') secretly modifies the internal value of the Ex1 object


The advantage: There is no need to do so many copy action, it is good for program performance.
Cons: The above code already shows that the var table value may be changed by you unexpectedly, very obscure, you have no way to control.






Again the specific disadvantage of a quote.
var list = [];
var table = ex1.gettable ();
var list.push (table);
Ex1 no reference, the Ex1 object is reclaimed by the system, but the table is not destroyed, always in the list, if the list forgot to delete the table, it is a potential memory leak.

Problems with JS references

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.