proposal-regexp-match-indices VS proposal-nullish-coalescing

Compare proposal-regexp-match-indices vs proposal-nullish-coalescing and see what are their differences.

proposal-regexp-match-indices

ECMAScript RegExp Match Indices (by tc39)

proposal-nullish-coalescing

Nullish coalescing proposal x ?? y (by tc39)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
proposal-regexp-match-indices proposal-nullish-coalescing
4 5
58 1,232
- -
1.0 0.0
almost 2 years ago about 1 year ago
HTML HTML
BSD 3-clause "New" or "Revised" License -
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

proposal-regexp-match-indices

Posts with mentions or reviews of proposal-regexp-match-indices. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-01-12.

proposal-nullish-coalescing

Posts with mentions or reviews of proposal-nullish-coalescing. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-01-12.
  • Unveiling Breakthroughs Found In The State Of JS 2022 Survey
    5 projects | dev.to | 12 Jan 2023
    For more info about this feature, you can refer to the original proposal.
  • Javascript: El operador nullish-coalescing
    2 projects | dev.to | 9 Dec 2022
    Propuesta
  • PEP 505 – None-aware operators (2015)
    2 projects | news.ycombinator.com | 2 Aug 2022
    For comparison, here are the Javascript RFCs for the equivalent operators:

    https://github.com/TC39/proposal-optional-chaining

    https://github.com/tc39/proposal-nullish-coalescing

    IMO optional chaining is a lifesaver when dealing with deeply nested JSON, and it's become indispensable in our Typescript code. But we also deal with JSON from various third-party endpoints in Python, and far too often we resort to an inefficient deep_get utility to make our code sensical.

    > if json?.get("foo")?.get("bar")?[0]?.get("baz")

    may seem messy but would be infinitely better than the fragile (note the nested list-of-a-single-dict, and how bugs can appear if it's not there):

    > if json.get("foo", {}).get("bar", [{}])[0].get("baz")

    or the inefficient

    > if deep_get(json, "foo.bar.0.baz")

    It's not nearly as good as the Typescript json.foo?.bar?.[0]?.baz - but it's good enough!

  • Stage 4: Nullish Coalescing for JavaScript
    1 project | dev.to | 17 Oct 2021
  • Using the optional chaining operator in JavaScript
    1 project | dev.to | 22 Mar 2021
    The nullish coalescing proposal provides a way to handle undefined or null values and provide default values for the expression. You can use the “??” operator to provide a default value for an expression.

What are some alternatives?

When comparing proposal-regexp-match-indices and proposal-nullish-coalescing you can also consider the following projects:

iswasmfast - Performance comparison of WebAssembly, C++ Addon, and native implementations of various algorithms in Node.js.

proposal-top-level-await - top-level `await` proposal for ECMAScript (stage 4)

public-roadmap - Checkly public roadmap. All planned features, updates and tweaks.

proposals - Tracking ECMAScript Proposals

proposal-relative-indexing-method - A TC39 proposal to add an .at() method to all the basic indexable classes (Array, String, TypedArray)

proposal-optional-chaining

babel-sublime - Syntax definitions for ES6 JavaScript with React JSX extensions.

proposal-weakrefs - WeakRefs