71
93

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.

Reactを学ぶために覚えたいJavascriptの基礎文法

Last updated at Posted at 2023-11-15

目的

Reactを自己学習しています。その中でReactを学ぶにはjavascriptへの理解が必要であり、最低限の基礎的な文法をまとめました。自分の備忘録でもあり、これも学んだ方がいいというものがあれば、ぜひともコメントをお願いします。

テンプレート文字列

${変数}のように記述する。javascriptでの変数や式はだいたい{}内に書く

const name = "いとと";
 const age = "28";
 const message2 = `私の名前は${name}です。年齢は${age}です。`;
 console.log(message2);// 私の名前はいととです。年齢は28歳です。

アロー関数

矢印=>を使って関数を定義する。従来のようにfunctionを使って定義をしなくてよいため、コードの可読性が上がる。

functionでの定義
const func1 = function(str) {
    return str;
}
console.log(func1("func1です")); //func1です
アロー関数
 const func2 = (str) => {
     return str;
 }
 console.log(func2("func2です"));//func2です

分割代入

配列から値を取り出したり、オブジェクトからプロパティを取り出して別個の変数に代入することができる。

//オブジェクトからname,ageプロパティを取り出す場合
const myProfile  = { 
    name:"いとと",
    age: 28,
};
const {name, age} = myProfile;//name,ageプロパティを変数name,ageにそれぞれ割り当てる※この時、オブジェクトのプロパティ名と変数名は一致する必要がある。
const message2 =`名前は${name}です。年齢は${age}歳です`;//上記のname,age変数を参照
console.log(message2);
//配列から取り出す場合
const myProfile =[`いとと`, 28]; //配列として定義
const [name, age] = myProfile;
const message4 = `名前は${name}です。年齢は${age}歳です`; // 順番が大事!
console.log(message4);

スプレッド構文

...fooの形で定義され、配列やオブジェクトの要素を展開する。

const arr1 =[1,2];
console.log(...arr1);//1 2 配列の中身を順番に処理
const sumFunc =(num1, num2) => console.log(num1 + num2);
sumFunc(...arr1);//3

mapメソッドを使った配列の処理

ループを使った繰り返し処理をわざわざ書かなくてよい
returnされた結果に基づいて新しい配列を生成する

const nameArr =["田中","山田","佐藤"];
const nameArr2 = nameArr.map((name)=>{
    return name;
})
 console.log(nameArr2);//["田中","山田","佐藤"]

配列をループして処理する場合

const nameArr =["田中","山田","佐藤"];
nameArr.map((name) => console.log(name));//田中、山田、佐藤
nameArr.map((name, index) => console.log(`${index + 1}番目は${name}です`));
//1番目は田中です,番目は山田です,3番目は佐藤です

Filter

ある条件に一致した値を取り出す
偶数を取り出す場合

const numArr = [1, 2, 3, 4, 5];
const newNumArr = numArr.filter((num) => {
    return num % 2 == 0;
});
console.log(newNumArr);//[2,4]

特定の値だけ出力条件を変える(田中だけ呼び捨てにする)

const nameArr =["田中","山田","佐藤"];
const newNameArr = nameArr.map((name) => {
    if (name == "田中"){
        return name
    } else {
        return `${name}さん`
    }
})
console.log(newNameArr);//['田中', '山田さん', '佐藤さん']

三項(条件)演算子

3つのオペラントをとる演算子。疑問符(?)、真値の場合の実行式、コロン(:)、偽値の場合の実行式の順に書く。

const num = 1300;
console.log(num.toLocaleString()); //1,300カンマ区切りで表示
const formattedNum = typeof num == `number` ? num.toLocaleString() : `数値を入力してください`;
console.log(formattedNum); //数字の時はカンマ区切りで表示 文字ならば「数値を入力してください」

const checkSum = (num1, num2) => {
    return num1 + num2 > 100 ? `100を超えています!!` : `許容範囲内です`;
}
console.log(checkSum(20, 81)); //`100を超えています!!`

参考資料

Udemy モダンJavaScriptの基礎から始める挫折しないためのReact入門

71
93
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
71
93

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?