I was looking at the JavaScript console in Chrome and noticed something strange, even though they appear the same, obj and JSON.parse(JSON.stringify(obj)) are not the same. Why is that?  var obj = {test:'this is a test', another: {omg:'ay dios mio', check:true}}; console.log(obj, JSON.parse(JSON.stringify(obj))); console.log(obj == JSON.parse(JSON.stringify(obj)));   They look identical but return false when you check equality. Why is that?
A strict equality operator will tell you if two object types are equal. However, is there a way to tell if two objects are equal, much like the hash code value in Java?  Stack Overflow question  is similar to this question, but requires a more academic answer. The scenario above demonstrates why it would be necessary to have one, and I'm wondering if there is any equivalent solution.
Find the number of solutions of $a_0+a_1+a_2=17$ if $2\le a_0\le 5$,   $3\le a_1\le 6$, $4\le a_2\le 7$.   This is an exmaple given by my professor, and his solution is:       The number of solutions to this equation satisfying the given   constraints is equal to the coefficient of $x^{21}$ in the expression   $$\left(\sum_{n=2}^5x^n\right)\left(\sum_{n=3}^6x^n\right)\left(\sum_{n=4}^7x^n\right)=x^9\left(\sum_{n=0}^3x^n\right)\left(\sum_{n=0}^3x^n\right)\left(\sum_{n=0}^3x^n\right).$$   This must be 3, since the coefficient of $x^8$ in $(1+x+x^2+x^3)^3$ is   3.   I understand actually nothing here. The expression of summation just pops up, and then comes the answer. What I only know that the idea of generating function is used here. Can someone help explain how the steps in the solution come? Difference between shadowing and overriding in C#? What is the penalty for dual US citizens who lie on the ESTA form in order to enter under VWP using their second passport? I have put together a map using the British OS Strategi data set which is pretty densely detailed. It is surveyed at 1:250,000 and so contains roads down to track level, rivers, villages, railway lines - you name it. There's a lot of data.  When I try and export an image version of the map (at about 1m x 1m), I always get an 'Exception: bad allocation' error. This happens when I try to export as a raster image or PDF. I have tried printing to a PDF generator (CutePDF) but the same thing happens. The print spooler shows the file size at 1.6Gb.  I am running QGIS on a dual core 2ghz Windows 8 system with 4Gb of RAM. Is it just a case of the file being too big? Is there anything I can do? Or is there an alternative, free GIS package that would do a similar job? Finding the maximum likelihood estimator (Theoretical statistics) Let $X_1, X_2, ..X_n$ represent a random sample from this pdf:  $$f(x|\theta)= \frac{3x^2}{\theta^3}, 0\leq x\leq \theta$$ (with 0 elsewhere)  Could someone explain how I would find the maximum likelihood estimator (MLE) of this pdf? I know I have to get the likelihood function L, then the log likelihood function, then differentiate, but I am getting lost in the calculations. Thanks! Banner ads should not be shown on the right-hand ad slot How can I automatically download lyrics in iTunes? Is there a way to automatically download lyrics in iTunes? Near the end in amongst the battle, Kylo Ren lands next to his ship that Rey stole. I understand that at a stretch (or through the will of the Force) Kylo found a TIE Fighter in the wreck he was in, but to my understanding those TIEs would not have had hyperdrives, so how did he travel that far without a carrier ship? I suppose I'm guessing/assuming that he travelled on his own (Solo if you will), and not with his Star Destroyer, as the Knights who travelled with him on his Star Destroyer were already at the destination. But if the Force willed him to find the TIE Fighter, why not a shuttle with a hyperdrive? It would be iconic enough to use in the film, surely.  How did Kylo Ren travel to another system in a civil war era TIE Fighter with no hyperdrive or carrier ship? How do I save files edited with vim? I would like to clarify something that I don't think is clear in   The first automatic delete rule kicks in at 9 days for closed questions:     If the question was closed more than 9 days ago, and ...         was not closed as a duplicate   has a score of 0 or less   has no answers with a score > 0   some other criteria that don't matter right now...      Then, at 30 days, there's:     If the question is more than 30 days old, and ...         has −1 or lower score   has no answers   is not locked      This rule applies to both open and closed questions, but it doesn't mention the same exemption for duplicates.  I'm pretty sure that I've seen old, downvoted duplicates disappear on ServerFault (and that fits what the rule says), but I'm also sure I've seen lots of comments along the lines of  "duplicates aren't deleted."  So what I'm after is a clear statement from a power-that-be or a clear reference that says "duplicate questions fall under the same 30-day automatic deletion rule as any other question."  (or that they don't)  (Note: I realize this doesn't apply the stub left behind when a question is merged into another.  Those "stubs" are locked and are never deleted.) I would like to upload a file asynchronously with jQuery.     $(document).ready(function () {     $("#uploadbutton").click(function () {         var filename = $("#file").val();          $.ajax({             type: "POST",             url: "addFile.do",             enctype: 'multipart/form-data',             data: {                 file: filename             },             success: function () {                 alert("Data Uploaded: ");             }         });     }); }); &lt;script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/jquery.min.js"&gt;&lt;/script&gt; &lt;span&gt;File&lt;/span&gt; &lt;input type="file" id="file" name="file" size="10"/&gt; &lt;input id="uploadbutton" type="button" value="Upload"/&gt;     Instead of the file being uploaded, I am only getting the filename. What can I do to fix this problem? In Windows, if you right-click a .bat file, there's an "Edit" option, which opens the .bat file with notepad. How do I make Windows use Notepad++ instead?  Note that this is different from the question . In that question, user asks for a way to make Notepad++ the default opener for specific file types. This is not what I want here, since I expect that double-clicking on .bat files executes them. I am a new user, who has just been told to run / execute a command. The answer has some text with a grey background like this text here or  sometimes this text here.   However, I don't know what "run" or "command" means in relation to Ubuntu.  How do I do this?    This is intended for use as a Q&amp;A you can link to when you tell someone to run a command. Determining true mean from noisy observations I have a large set of data points of the form (mean, stdev). I wish to reduce this to a single (better) mean, and a (hopefully) smaller standard deviation.  Clearly I could simply compute $\frac{\sum data_{mean}}{N}$, however this does not take in to account the fact that some of the data points are significantly more accurate than others.  To put it simply, I wish to preform a weighted average of these data points, but do not know what the weighting function should be in terms of the standard deviation. Can sum of a rational number and its reciprocal be an integer?   My brother asked me this question and I was unable to answer it.   The only trivial solutions which I could think of are $1$ and $-1$.  As to what I tried, I am afraid not much. I have never tried to solve such a question, and if someone could point me in the right direction, maybe I could complete it on my own.  Please don't misunderstand my question.   I am looking for a rational number $r$ where $r + \frac{1}{r}$ is an integer. Can I pass arguments to an alias command? I want to know if I can pass an argument with an alias command.  for example:  alias d="dmesg|grep -iw usb|tail -5"    Now d will print the last 5 lines. If I want to use d to print a different number of lines, I have to make change in the alias command declaration of d again.  Is there any way I can modify the declaration of an alias so that I don't have to retype the declaration to change the number of lines. Like incorporating passing the number of lines as an argument while declaring alias for d? Or is there some other method to solve this? Playing Minecraft on Windows 10, owning a Xbox One disc I own a Minecraft disc for an Xbox One, and would like to play on my PC (ultimately, playing with others who will be on the Xbox).  I'm not too familiar with the Xbox account ecosystem, and with dozen different Minecraft editions, I'm lost as to how I can do that. How can I safely move a module to another folder? I created a module through Drupal Console, unfortunately it wasn't placed in a folder of its own, rather straight into /modules/custom. Before I noticed where it had gone, I enabled the module.   In Drupal 6/7, this was easy to fix - I could literally just put the files into the correct path, clear the cache (maybe rebuild the registry, it wasn't an exact science), and all was well.  The same isn't true for Drupal 8; I moved the files into a subfolder, rebuilt cache, and all requests tell me that Drupal is failing to include a required file. The particular file is a block class, and the path Drupal is trying to find it is where it used to be, not where I've moved it to.  The bit of code objecting is in Symfony's ApcClassLoader, so I guess I need to clear something that's slightly above Drupal's head to get this path reference updated.  How can I do that?  Uninstalling and re-installing the module does work, but once there's important data stored that's not going to be an option.  I was wrong, uninstalling and re-installing is not a viable option. After uninstalling and reinstalling, Drupal can no longer pick up the custom blocks the module defines. I'm guessing that reference is cached somewhere that isn't cleared when the module is uninstalled. Just need to find out where that is and how to clear it... C++ namespace and include Why do we need both using namespace and include directives in C++ programs?  For example,   #include &lt;iostream&gt;  using namespace std;  int main() {  cout &lt;&lt; "Hello world"; }   Why is it not enough to just have #include &lt;iostream&gt; or just have using namespace std and get rid of the other?  (I am thinking of an analogy with Java, where import java.net.* will import everything from java.net, you don't need to do anything else.) I was reading a blogpost here:  () One thing that threw me off was that after the first four large displayed equations, there is the statement &quot;it is sufficient to prove that if the theorem holds for $n=m+1$, then it holds for $n=m$.&quot; How is this type of induction valid? I browsed around for things like backward induction, reverse induction, and Cauchy induction, but couldn't find a justification for how this is valid. With the usual forward induction of verifying a base case and proving $P(n)\implies P(n+1)$, it's easy to intuitively understand how induction will show a property holds for all natural numbers (or at least starting at the base case). But with this reverse induction, it seems to me that if you prove $P(m+1)\implies P(m)$, then if you were able to verify a specific case like $P(15)$, then you would only know it's true for numbers up to $15$. How does it actually prove the property for all naturals?