
Understanding JavaScript Objects - octosphere
https://blog.halolabs.io/understanding-javascript-objects-d31cd24ca60f
======
elboru
It's always nice to find this kind of article where the author synthesizes a
lot of knowledge in a single place.

I just have an advice, please don't mix upper case and lower case for
programming names in your text, it makes it a little harder to understand, as
a reader I was not sure if the author was talking about the same
object/function or not. For instance I could find "object.assign()" inside a
paragraph but then "Object.assign()" in the code example.

~~~
fireattack
He also uses `_proto_` (should be `__proto__`), `(‘b’, ‘c’)` (should be `('b',
'c')`) etc. in the inner text.

------
SketchySeaBeast
Is the prototype chain an example of an object as well? An object doesn't need
to be instantiated as any sort of class, it can be a function?

~~~
rofo1
Functions are indeed objects in JS, however:

'function' === typeof (function(){}) while 'object' === typeof ({})

There are no classes in JavaScript, the way there are in some OO languages.

The new syntax of 'class' introduced in ES6 is just a synthetic sugar which
will be translated to an Object and would use inheritance via the prototype
chain.

I suggest the book 'JavaScript: The good parts' (by Douglas Crockford) for
more on this topic.

~~~
SketchySeaBeast
Thanks, I'll take a look! I've been in industry a couple of years now, but my
experience with JavaScript has largely been "hit it until it works and then
don't touch it again" \- there seems to be at least two ways to do anything
with no way to tell if one is objectively better.

~~~
goliatone
Well, that’s because due to compatibility we still have the old way of doing
things alongside the new ways of doing things plus the multiple future-now way
of doing things. JavaScript recently has been moving fast both from a
community and committee perspective. However, I think is nowhere near as bad
as C++ where you can do similar things is different ways with big nuances on
end results.

------
chatmasta
What's with the giant photo of a hipster starter kit at the top of the
article?

~~~
octosphere
Probably a subtle nod to _objects_ , as in, these are the objects you need to
be a hipster.

~~~
amelius
As someone who hates working on a laptop, it's sad to learn that this will
prevent me from being a hipster.

~~~
jerf
I suggest meta-hipsterism... being too hip to actually, you know, _be_ a
hipster. How dull that would be.

~~~
amelius
That would probably make me feel misunderstood all the time.

