Code Monkey home page Code Monkey logo

Comments (4)

abmi108 avatar abmi108 commented on June 5, 2024

Fantastic resource. Thank you for putting in the effort.
Just wanted to point out some of the typos I noticed here (correct me if I am wrong) since I couldn't find a corresponding repo.

  • In the JS in Depth section under Objects: it should be
Object.assign(target, src1, src2) 

instead of

Object.assign(target, src1, src1)
  • In the JS in Depth section under Arrays: the link for array destructuring is broken as the link should be
https://blog.isquaredsoftware.com/presentations/2019-05-js-for-java-devs/#/48 

instead of

https://blog.isquaredsoftware.com/persentations/2019-05-js-for-java-devs/#/48

The error is in the mis-spellling of "presentations" as "persentations".

Apart from that amazing read. Thank You!

from marks-dev-blog-comments.

markerikson avatar markerikson commented on June 5, 2024

Thanks for pointing these out!

from marks-dev-blog-comments.

MarcosNASA avatar MarcosNASA commented on June 5, 2024

Hey, Mark! Awesome content! I'm gonna start recommending this as a starting point for folks who are jumping from any language to JS. ๐ŸŽ‰

However, there's something around scope that confused me a bit:

let and const are block-scoped - they only exist within the curly braces block where they're declared, and the same variable name can be reused and shadowed inside of nested blocks. var is function-scoped - no matter where it's used, the declaration is hoisted to act as if it was written on the first line of the function it's inside, and reusing the same name will override the earlier declaration.

Indeed, let and const "can be reused and shadowed inside of nested blocks", but also var can (when the nested blocks are functions)! Instead, it kinda sounds as if anytime you use the same name for a var-declared variable it will override any previous. Counter-example:

var x = 0
;(function() { var x = 3 })()
console.log(x)

Might just be me, though, but I think that stating that any variable declarator can shadow each other in nested scope-bounding-blocks but that, within the same scope-bounding-block, only var allows "multiple declarations" (explaining that scope-bounding-blocks means any block for const and let and only functions for var) makes the point clearer.

Anyway, thanks for your work!

from marks-dev-blog-comments.

 avatar commented on June 5, 2024

The link to Immer is broken.
Thank you for all of this by the way : )

from marks-dev-blog-comments.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.