<!doctype html>
<html>
<body>
<h2>What Can JavaScript Do?</h2>
<p id="demo">JavaScript can change HTML content.</p>
<button
type="button"
onclick='document.getElementById("demo").innerHTML = "Hello JavaScript!"'
>
Click Me!
</button>
</body>
</html>
<!doctype html>
<html>
<body>
<h2>What Can JavaScript Do?</h2>
<button onclick="document.getElementById('myImage').src='pic_bulbon.gif'">Turn on the light</button>
<img
id="myImage"
src="pic_bulboff.gif"
style="width:100px"
/>
<button onclick="document.getElementById('myImage').src='pic_bulboff.gif'">Turn off the light</button>
</body>
</html>
<!doctype html>
<html>
<body>
<h2>What Can JavaScript Do?</h2>
<p
id="demo"
style="color: red;"
>
Hello JavaScript!
</p>
<button
type="button"
onclick="document.getElementById('demo').style.color = 'blue'"
>
Click Me!
</button>
</body>
</html>
<!doctype html>
<html>
<body>
<h2>What Can JavaScript Do?</h2>
<p id="demo">Hello JavaScript!</p>
<button
type="button"
onclick="document.getElementById('demo').style.display = 'none'"
>
Click Me!
</button>
</body>
</html>
<!doctype html>
<html>
<body>
<h2>What Can JavaScript Do?</h2>
<p
id="demo"
style="display: none;"
>
Hello JavaScript!
</p>
<button
type="button"
onclick="document.getElementById('demo').style.display = 'block'"
>
Click Me!
</button>
</body>
</html>
<script>
태그를 사용하여 자바스크립트 코드를 작성할 수 있다.<script>
태그는 HTML 문서의 <head>
또는 <body>
태그 안에 작성할 수 있다.<!doctype html>
<html>
<body>
<h2>JavaScript in Body</h2>
<p id="demo">A Paragraph.</p>
<button
type="button"
onclick="myFunction()"
>
Try it
</button>
<script>
function myFunction() {
document.getElementById('demo').innerHTML = 'Paragraph changed.';
}
</script>
</body>
</html>
<script>
태그를 사용하여 외부 자바스크립트 파일을 불러올 수 있다.<script>
태그의 src
속성에 외부 자바스크립트 파일의 경로를 지정하면 된다.<!doctype html>
<html>
<body>
<h2>JavaScript in Body</h2>
<p id="demo">A Paragraph.</p>
<button
type="button"
onclick="myFunction()"
>
Try it
</button>
<script src="myScript.js"></script>
</body>
</html>
let
, const
, var
키워드를 사용한다.변수란 데이터를 저장하는 메모리 공간을 의미한다. 변수에 값을 저장하면 변수에 저장된 값은 메모리에 저장된다.
변할 수 있는 것
으로 어떠한 값을 담는 상자
라고 생각하면 된다.let a = 1
이라고 선언하면 a
라는 변수에 1
이라는 값을 담는다라는 의미이다.변수에 값을 할당한다
라고 표현한다.=(등호)
는 프로그래밍에서는 할당한다
라는 의미로 사용된다.값을 재사용
하기 위해서이다.let a = 1
이라고 선언하면 a
라는 변수에 1
이라는 값을 담는다.a
라는 변수를 사용하면 된다.1
이라는 값을 여러 번 사용할 때 1
이라는 값을 여러 번 쓰지 않아도 되기 때문에 편리하다.// a라는 변수에 1이라는 값을 할당한다.
let a = 1;
// b라는 변수에 2이라는 값을 할당한다.
const b = 2;
// c라는 변수에 3이라는 값을 할당한다.
var c = 3;
console.log(a); // 1
console.log(b); // 2
console.log(c); // 3
let
, const
, var
키워드를 사용한다.let
let
은 변수를 선언할 때 사용하는 키워드로 변수를 선언하면 변수를 재할당할 수 있다.let a = 1;
a = 2;
console.log(a); // 2
const
const
는 상수를 선언할 때 사용하는 키워드로 변수를 선언하면 변수를 재할당할 수 없다.const b = 1;
b = 2; // TypeError: Assignment to constant variable.
var
var
는 변수를 선언할 때 사용하는 키워드로 변수를 선언하면 변수를 재할당할 수 있다.var
재할당 오류가 발생하지 않기 때문에 let
, const
를 사용하는 것이 좋다.var c = 1;
c = 2;
console.log(c); // 2
let a = 1;
let b = 2;
console.log(a); // 1
console.log(b); // 2
let a = 'Hello';
let b = 'World';
console.log(a); // Hello
console.log(b); // World
let a = true;
let b = false;
console.log(a); // true
console.log(b); // false
let a = { name: 'John', age: 20 };
let b = { name: 'Jane', age: 25 };
console.log(a); // { name: 'John', age: 20 }
console.log(b); // { name: 'Jane', age: 25 }
let a = [1, 2, 3];
let b = [4, 5, 6];
console.log(a); // [1, 2, 3]
console.log(b); // [4, 5, 6]
let a = function () {
console.log('Hello');
};
let b = function () {
console.log('World');
};
a(); // Hello
b(); // World
let a = 1;
let b = 2;
console.log(a + b); // 3
console.log(a - b); // -1
console.log(a * b); // 2
console.log(a / b); // 0.5
console.log(a % b); // 1
let a = 1;
a += 2;
console.log(a); // 3
a -= 2;
console.log(a); // 1
a *= 2;
console.log(a); // 2
a /= 2;
console.log(a); // 1
a %= 2;
console.log(a); // 1
let a = 1;
let b = 2;
console.log(a === b); // false
console.log(a !== b); // true
console.log(a > b); // false
console.log(a < b); // true
console.log(a >= b); // false
console.log(a <= b); // true
let a = true;
let b = false;
console.log(a && b); // false
console.log(a || b); // true
console.log(!a); // false
console.log(!b); // true
let a = 1;
let b = 2;
let result = a > b ? 'a가 크다' : 'b가 크다';
console.log(result); // b가 크다
if문
은 조건식이 참일 때 코드 블록을 실행한다.let a = 1;
if (a === 1) {
console.log('a는 1이다.');
}
if-else문
은 조건식이 참일 때 코드 블록을 실행하고 거짓일 때 다른 코드 블록을 실행한다.let a = 1;
if (a === 1) {
console.log('a는 1이다.');
} else {
console.log('a는 1이 아니다.');
}
if-else if-else문
은 여러 조건식을 판단하여 해당하는 코드 블록을 실행한다.let a = 1;
if (a === 1) {
console.log('a는 1이다.');
} else if (a === 2) {
console.log('a는 2이다.');
} else {
console.log('a는 1도 2도 아니다.');
}
for문
은 조건식이 참일 때 코드 블록을 반복 실행한다.for (let i = 0; i < 5; i++) {
console.log(i);
}
while문
은 조건식이 참일 때 코드 블록을 반복 실행한다.let i = 0;
while (i < 5) {
console.log(i);
i++;
}
function
키워드를 사용한다.function hello() {
console.log('Hello');
}
hello(); // Hello
함수 표현식
을 사용한다.let hello = function () {
console.log('Hello');
};
hello(); // Hello
function
키워드를 생략하여 함수를 선언한다.let hello = () => {
console.log('Hello');
};
hello(); // Hello
let person = {
name: 'John',
age: 20,
hello: function () {
console.log('Hello');
},
};
console.log(person.name); // John
console.log(person.age); // 20
person.hello(); // Hello
let person = {
name: 'John',
age: 20,
};
console.log(person); // { name: 'John', age: 20 }
console.log(person.name); // John
console.log(person.age); // 20
let person = {
name: 'John',
age: 20,
hello: function () {
console.log('Hello');
},
};
person.hello(); // Hello
let arr = [1, 2, 3];
console.log(arr[0]); // 1
console.log(arr[1]); // 2
console.log(arr[2]); // 3
let arr = [1, 2, 3];
arr.push(4);
console.log(arr); // [1, 2, 3, 4]
arr.pop();
console.log(arr); // [1, 2, 3]
function hello(callback) {
console.log('Hello');
callback();
}
hello(function () {
console.log('World');
});
let button = document.querySelector('button');
button.addEventListener('click', function () {
console.log('Click');
});
let button = document.querySelector('button');
button.addEventListener('click', function () {
console.log('Click');
});
let xhr = new XMLHttpRequest();
xhr.open('GET', 'https://jsonplaceholder.typicode.com/posts', true);
xhr.send();
xhr.onload = function () {
if (xhr.status === 200) {
console.log(JSON.parse(xhr.responseText));
}
};
let
은 변수를 선언할 때 사용하고 const
는 상수를 선언할 때 사용한다.function
키워드를 생략하여 함수를 선언한다.class
키워드를 사용하여 객체를 생성한다.// math.js
export function sum(a, b) {
return a + b;
}
// index.js
import { sum } from './math.js';
console.log(sum(1, 2)); // 3
// ES6
let a = 1;
// Babel
('use strict');
var a = 1;
// webpack.config.js
module.exports = {
entry: './src/index.js',
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'dist'),
},
};
// package.json
{
"dependencies": {
"react": "^17.0.2",
"react-dom": "^17.0.2"
}
}
// app.js
console.log('Hello Node.js');
// app.js
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Hello Express');
});
app.listen(3000, () => {
console.log('Server is running on http://localhost:3000');
});
// App.js
import React from 'react';
function App() {
return <h1>Hello React</h1>;
}
export default App;
// App.vue
<template>
<h1>Hello Vue</h1>
</template>
<script>
export default {
name: 'App',
}
</script>
// app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css'],
})
export class AppComponent {
title = 'Hello Angular';
}
// app.ts
function hello(name: string): string {
return `Hello ${name}`
}
console.log(hello('TypeScript')) // Hello TypeScript
// pages/index.js
export default function Home() {
return <h1>Hello Next.js</h1>;
}
// pages/index.vue
<template>
<h1>Hello Nuxt.js</h1>
</template>
// app.controller.ts
import { Controller, Get } from '@nestjs/common'
@Controller()
export class AppController {
@Get()
getHello(): string {
return 'Hello NestJS'
}
}
// schema.graphql
type Query {
hello: String
}
// resolvers.js
const resolvers = {
Query: {
hello: () => 'Hello GraphQL',
},
}
// index.js
const { ApolloServer, gql } = require('apollo-server')
const typeDefs = gql`
type Query {
hello: String
}
`
const resolvers = {
Query: {
hello: () => 'Hello GraphQL',
},
}
const server = new ApolloServer({ typeDefs, resolvers })
server.listen().then(({ url }) => {
console.log(`Server ready at ${url}`)
})
// app.js
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/test', {
useNewUrlParser: true,
useUnifiedTopology: true,
});
const Cat = mongoose.model('Cat', { name: String });
const kitty = new Cat({ name: 'Zildjian' });
kitty.save().then(() => console.log('meow'));
// app.js
const mysql = require('mysql');
const connection = mysql.createConnection({
host: 'localhost',
user: '',
password: '',
database: '',
});
// .eslintrc.js
module.exports = {
extends: ['airbnb-base'],
rules: {
'no-console': 'off',
},
};
// .prettierrc.js
module.exports = {
singleQuote: true,
semi: false,
};