0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

フロントエンドエンジニアを目指してJavaScriptを基礎か学び直す[分割代入]

Last updated at Posted at 2022-08-21

これまで真剣に向き合ってこなくてもなんとかやってこれたのですが、
「ちゃんとフロントエンドエンジニアになろう」と決心して奮闘している1児の父です!

フロントエンドエンジニアを目指したい人の役に立てれば嬉しいです!

clean-code-javascript

キレイなコードが書けるようにと思って見ていたら、コードの解説でわからない箇所が出てくる始末…。

非常に勉強になったのでオススメです!
これまで書いたコードを思い出して懺悔しながら読んでおりました…

本題の分割代入について

clean-code-javascriptの中の例としてあったコードに下記のようなものがありました。

1 const address = 'One Infinite, Loop Cupertino 95014';
2 const cityZipCodeRegex = /^[^,\\]+[,\\\s]+(.+?)\s*(\d{5})?$/;
3 const [, city, zipCode]= address.match(cityZipCodeRegex);

僕がわからなかったのは3行目です…

3 const [, city, zipCode]= address.match(cityZipCodeRegex);

すごく基本的なコードだと思いますが…「そんなのもわからないのか!!」
と言いたい気持ちは抑えておいてもらえると嬉しいです…

結論から言えば…「,(カンマ)」は1つ目を飛ばすことができる記述です。
1つ目というのは…

1 const address = 'One Infinite, Loop Cupertino 95014';
2 const cityZipCodeRegex = /^[^,\\]+[,\\\s]+(.+?)\s*(\d{5})?$/;
    3 const [, city, zipCode]= address.match(cityZipCodeRegex)||[];

1行目を2行目の正規表現を使って、3行目でmatchを使用し条件の一致した文字列を返しているわけですが、1つ目に返ってくる結果をスキップして、2つ目をcityに代入、3つ目をzipCodeに代入しているということですね。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?