Smooshes the evaluation of an object that can be many different shapes into an easy to understand operation.
I think the HTTP response is a great example. It can have many status codes which can determine how you want to proceed with that response. If you've worked with handling HTTP responses, you've most likely implemented some version of a 'match' operation before.
Yeah, I think that's essentially the idea. However the longer part is getting the support native in the browsers. Tools like babel will most likely provide some form of support before the browser does.
My only gripe with the sale to Facebook is that it was originally funded by contributions on Kickstarter, and those "funders" will get nothing in return. I just don't see gamers and developers supporting Facebook as much as they supported Oculus... which makes it seem like they did something sleazy by selling to FB.