0
1

More than 1 year has passed since last update.

javascript基本文法

Last updated at Posted at 2022-09-14

文字の連結

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行だけコメントアウト
//
複数行のコメントアウト
/*
*/
0
1
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
1