文字の連結
console.log(3+5); //8が出力される。
console.log("3"+"5"); //35が出力される +の時のみ""で囲った数値は文字列として扱われる。
console.log(parseInt("3",10)+5); //8が出力される。 parseIntで文字列3を10進数の3に変換する。
文字の中にtabと改行を入れる
// \nで改行 \tでtabを入れる
console.log("Hello\n\tworld!");
//出力結果
//Hello
// world!
変数の定義
let name = "にんじゃ";
定数の定義
const name = "にんじゃ";
テンプレートリテラル
const name = "にんじゃ";
console.log(`こんにちは、${name}さん`); //バッククォートで囲む
等価演算子
a==b //aとbが等しい
a!=b //aとbが異なる
厳密等価演算子
a===b //aとbが厳密に等しい
a!==b //aとbが厳密に異なる
and / or
&& //かつ
|| // または
+1 / -1
price++ //price+1 または price = price+1ど同じ
price-- //price-1 または price = price-1ど同じ
if文
const number = 7;
//通常の書き方
if(number>10){
console.log("numberは10より大きいです");
}else if(number>5){
console.log("numberは5より大きいです");
}else{
console.log("numberは5以下です");
}
switch文
const n = 4;
switch (n) {
case 1:
console.log("大吉です");
break;
case 2:
console.log("吉です");
break;
case 3:
console.log("小吉です");
break;
default:
console.log("凶です");
break;
}
while文
let number = 1;
while(number<=100){
console.log(number);
number+=1;
}
//1回はwhileの中を実行したい場合はdo whileを使う。
let number = -50
do {
console.log(number);
number-=15;
}while(number>0)
for文
for(let number=1; number<=100; number++){
console.log(number);
}
配列
//基本の形
const animals = ["dog","cat","sheep"];
//呼び出し
console.log(animals);
console.log(animals[2]);
//更新
animals[2]="rabbit";
console.log(animals[2]);
//for文
const animals = ["dog", "cat", "sheep", "rabbit", "monkey", "tiger", "bear", "elephant"];
for (let i = 0; i < animals.length; i++) {
console.log(animals[i]);
}
オブジェクト
//基本の形
const item ={name: "手裏剣", price: 300}; //値の代入で終わっているので;で終わらせる。
//呼び出し
console.log(item.name);
console.log(item["name"]); //変数でアクセスする場合使用
//出力結果
//手裏剣
//手裏剣
//配列
const characters = [
{name: "にんじゃ", age: 14},
{name: "ひつじ", age: 1000}
];
//呼び出し
console.log(characters[0]);
console.log(characters[1].name);
//アロー関数
const animal = {
name: "レオ",
age: 3,
greet: ()=>{
console.log("こんにちは");
}
}
//呼び出し
animal.greet();
関数
const greet = function() {
console.log("こんにちは!");
};
//呼び出し
greet();
アロー関数
const greet = ()=>{
console.log("こんにちは!");
};
//呼び出し
greet();
アロー関数(略記)
const double = a => a*2;
console.log(double(12));
//出力結果
//24
クラス
class Animal {
constructor(name,age) {
this.name = name;
this.age = age;
}
}
//呼び出し
const animal = new Animal("モカ",8);
console.log(`名前: ${animal.name}`);
console.log(`年齢: ${animal.age}`);
クラス(メソッドを含む)
class Animal {
constructor(name, age) {
this.name = name;
this.age = age;
}
//greetメソッド
greet() {
console.log("こんにちは");
}
//infoメソッド
info() {
this.greet();
console.log(`名前は${this.name}です`);
console.log(`${this.age}歳です`);
}
}
const animal = new Animal("レオ", 3);
animal.info();
クラスの継承
class Dog extends Animal {
}
コンストラクタのオーバーライド
class Dog extends Animal {
constructor(name, age, breed){
super(name, age);
this.breed = breed;
}
分割代入
//オブジェクトの場合
const myProfile = {
name: "太郎",
age: 20
};
const { name, age } = myProfile; //myProfileオブジェクトをname,ageに分割代入して使用する。
const message1 = `名前は${name}です。年齢は${age}歳です`;
console.log(message1);
//配列の場合
const myProfile =["太郎",20];
const [name, age] = myProfile;
const message2 = `名前は${name}です。年齢は${age}です`;
console.log(message2);
スプレッド構文
主に配列に使用される
//配列の値を分割する場合
const arr1 = [1, 2];
const sumFunc = (num1, num2) => console.log(num1 + num2);
sumFunc(...arr1); //配列を展開して引数に充てる
//出力結果
//3
//配列をまとめる場合
const arr2 = [1,2,3,4];
const [num1,num2,...arr3] = arr2;
console.log(arr3);
//出力結果
//[3,4]
//配列をコピーする場合
const arr4 = [1, 2];
const arr5 = [3, 4];
const arr6 = [...arr4]; //参照を引き継がずにコピーできる
console.log(arr6);
//出力結果
//[1,2]
//配列を結合する場合
const arr7 = [...arr4, ...arr5];
console.log(arr7);
//出力結果
//[1,2,3,4]
エクスポート/インポート
ファイルのエクスポート/インポート
animal.js
class Animal{
}
export default Animal;
dog.js
import Animal from "./animal";
.
.
名前付きエクスポート/インポート
dogData.js
const dog1 = new Dog("レオ",4,"チワワ");
export{dog1,dog2};
script.js
import{dog1,dog2} from ".dogData";
dog1.info();
パッケージのエクスポート/インポート
import 定数名 from "パッケージ名";
ex)
import readlineSync from "readline-sync";
const name = readlineSync.question("名前を入力してください:");
const age = readlineSync.questionInt("年齢を入力してください:");
console.log(`${name}と入力されました`);
console.log(`${age}と入力されました`);
コメントアウトの方法
VS codeの場合、command + / でコメントアウト可能
1行だけコメントアウト
//
複数行のコメントアウト
/*
*/