JavaScript

JavaScript

ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ๊ฐœ๋ฐœ์„ ํ•˜๋Š”๋ฐ๋Š” ๋งŽ์€ ์–ธ์–ด๊ฐ€ ์กด์žฌํ•œ๋‹ค. ๊ฐ ๋ถ„์•ผ๋ณ„๋กœ ํ”„๋ก ํŠธ์—”๋“œ, ๋ฐฑ์—”๋“œ๊ฐ€ ์žˆ๊ณ  java, C, C++, Phyon, JavaScript ๋“ฑโ€ฆ. ์–ธ์–ด๊ฐ€ ์žˆ๋‹ค.

ํ•˜์ง€๋งŒ ํ”„๋ก ํŠธ์—”๋“œ ์˜์—ญ ๊ฐœ๋ฐœ์‹œ ์›น ๋ธŒ๋ผ์šฐ์ ธ์—์„œ๋Š” JavaScript๋Š” ๋นผ๋†“๊ณ  ์ƒ๊ฐ ํ•  ์ˆ˜ ์—†๋Š” ์–ธ์–ด์ด๋‹ค.

์ตœ๊ทผ ๋“ค์–ด์„œ ๋ฐฑ์—”๋“œ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์›น์ด์•„๋‹Œ ํƒˆ์›น ์˜์—ญ์—์„œ๋„ ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ๋‹ค.

node.js(์›น ์„œ๋ฒ„ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ)

  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์„œ๋ฒ„์ชฝ์—์„œ๋„ ์‚ฌ์šฉ๊ฐ€๋Šฅ ( ํ”„๋ก ํŠธ์™€ ๋ฐฑ์—”๋“œ๋ฅผ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ํ†ตํ•ฉ๊ฐ€๋Šฅ) / Writer (โ€˜~โ€™) - node.js

ํƒˆ์›น(Google Apps Script)

  • ์•ฑ์—์„œ๋„ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉ๊ฐ€๋Šฅ(์˜์—ญํ™•์žฅ) / msgBox (โ€˜~โ€™) - google spred sheet

JS๊ณผ html์˜ ์—ฐ๊ฒฐ


js๋Š” ํŠน๋ณ„ํ•œ ํŒŒ์ผ ์„ค์น˜์—†์ด ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
html์˜ ์—ฐ๊ฒฐ์‹œ์—๋Š” ๋‘๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์žˆ๋Š”๋ฐ ํ•˜๋‚˜๋Š” html์— ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ,
jsํŒŒ์ผ ์ƒ์„ฑํ›„ html๊ณผ ์—ฐ๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค.

html์˜ ์ž‘์„ฑ

<!DOCTYPE html>
<html lang="en" dir="ltr">
    <head>
        <meta charset="utf-8">
        <title>practice</title>
    </head>
    <body>
        <button onclick="btn_alert('์•ˆ๋…•ํ•˜์„ธ์š”!')"> ์ธ์‚ฌํ•˜์„ธ์š”! </button>
        <script>
        // ๊ฒฝ๊ณ ์ฐฝ
            function btn_alert(str) {
                alert(str);         }
        </script>
    </body>
</html>

<body></body>ํƒœ๊ทธ ์•ˆ์— <script></script>ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•ด js์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ๋‹ค.

ํ•˜์ง€๋งŒ ์œ„ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉ์‹œ ์ฝ”๋“œ์˜ ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์–ด๋ ค์›Œ์ง„๋‹ค.
ํ›„์— ์งง์€ ์ฝ”๋“œ๊ฐ€ ์•„๋‹ˆ๋ผ 1000๊ฐœ 10000๊ฐœ์˜ ์ฝ”๋“œ๊ฐ€ ์ž‘์„ฑ๋˜ ์žˆ๋‹ค๋ฉด ์ƒ์ƒ๋„ ํ•˜๊ธฐ ์‹ซ๋‹ค.

JSํŒŒ์ผ ์ƒ์„ฑ

//.js file
function alert_button(str) {
    alert(str);
}

//html
<!DOCTYPE html>
<html lang="en" dir="ltr">
    <head>
        <meta charset="utf-8">
        <title>practice</title>
    </head>
    <body>

        <button onclick="btn_alert('์•ˆ๋…•ํ•˜์„ธ์š”!')"> ์ธ์‚ฌํ•˜์„ธ์š”! </button>

        <script type="text/javascript" src="practice.js"></script> 

    </body>
</html>

.jsํŒŒ์ผ์„ ์ƒ์„ฑ ํ›„ ํ•„์š”ํ•œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•œ๋‹ค.
ํ›„์— <body></body>ํƒœ๊ทธ ์•ˆ์— <script type=โ€text/javascriptโ€ src=โ€practice.jsโ€></script>ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•ด .jsํŒŒ์ผ์„ ๋ถˆ๋Ÿฌ์™€ ์—ฐ๊ฒฐ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค.

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” html ํŒŒ์ผ์— <body> ํƒœ๊ทธ ์•ˆ์˜ ๋งจ ์•„๋ž˜์— ์ ์–ด์ค€๋‹ค. (์ปดํŒŒ์ผ ์ฒ˜๋ฆฌ ์ˆœ์„œ๋•Œ๋ฌธ์—)

JavaScript ์‹คํ–‰ ๊ธฐ๋ณธ


  • alert(); - ๊ฒฝ๊ณ ์ฐฝ ์ถœ๋ ฅ
  • confirm() - ํ™•์ธ์ฐฝ์„ ์ถœ๋ ฅ (ok -> true / cancel -> false)
  • prompt(); - Client๋กœ ๋ถ€ํ„ฐ ์ž…๋ ฅ๊ฐ’์„ ๋ฐ›์Œ
  • console.log(); - ์ฝ˜์†” ๋กœ๊ทธ์— ์ถœ๋ ฅ

๋ฐ์ดํ„ฐํƒ€์ž…


// Number type
var number = 1;   
var number = 2; 
let number2 = 1; // ์˜ค๋ฅ˜ ๋ฐœ์ƒ var์™€ ๋‹ฌ๋ฆฌ let์€ ๋ณ€์ˆ˜๋ช…์„ ์ค‘๋ณตํ•˜์—ฌ 
let number2 = 2; // ์„ ์–ธ ํ•  ์ˆ˜ ์—†๋‹ค.

// String(๋ฌธ์ž) type
let srt1 = 'Hello World';
let srt2 = "Hello World";

// boolean type
let boo1 = true;
let boo2 = false;

// null - ๊ฐ’์ด ์—†๋‹ค
let foo = null;

// undefined - ๊ฐ’์ด ์ •ํ•ด์ง€์ง€์•Š์•˜๋‹ค
let bar;

// ๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด
{ name: 'Lee', gender: 'male' }

// ๋ฐฐ์—ด ๋ฆฌํ„ฐ๋Ÿด
[ 1, 2, 3 ]

// ์ •๊ทœํ‘œํ˜„์‹ ๋ฆฌํ„ฐ๋Ÿด
/ab+c/

// ํ•จ์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด
function() {}

์›์‹œ ํƒ€์ž… (primitive data type)

  • number
  • string
  • boolean
  • null
  • undefined
  • symbol (New in ECMAScript 6)

๊ฐ์ฒด ํƒ€์ž… (Object data type)

  • object

js๋Š” ๋‹ค๋ฅธ java์™€ C ๊ฐ™์€ ์–ธ์–ด์™€ ๋‹ฌ๋ฆฌ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ๋”ฐ๋กœ ์ง€์ •ํ•ด์ฃผ์ง€ ์•Š๋Š”๋‹ค. ๋ณ€์ˆ˜์— ํ• ๋‹น๋œ ๊ฐ’์˜ ํƒ€์ž…์— ์˜ํ•ด ๋™์ ์œผ๋กœ ๋ณ€์ˆ˜์˜ ํƒ€์ž…์ด ๊ฒฐ์ •๋œ๋‹ค.
์ด๋ฅผ ๋™์  ํƒ€์ดํ•‘์ด๋ผ ํ•˜๋ฉฐ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ€ ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์™€ ๊ตฌ๋ณ„๋˜๋Š” ํŠน์ง• ์ค‘ ํ•˜๋‚˜์ด๋‹ค.

๋ณ€์ˆ˜


js๋„ ๋‹ค๋ฅธ ์–ธ์–ด์™€ ๊ฐ™์ด ๋ณ€์ˆ˜๋ฅผ ํ†ตํ•ด ๊ฐ’์„ ์„ ์–ธ ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ˆซ์ž

var a = 1;
alert(a+1);  // ์ถœ๋ ฅ ๊ฐ’ 2
 
var a = 2;
alert(a+1);  // ์ถœ๋ ฅ ๊ฐ’ 3โ€‹

๋ฌธ์ž์—ด

var first = "coding";
alert(first+" everybody");โ€‹ // ์ถœ๋ ฅ ๊ฐ’ coding everybody

var a = 'coding', b = 'everybody';
alert(a); // ์ถœ๋ ฅ ๊ฐ’ coding 
alert(b);โ€‹ // ์ถœ๋ ฅ ๊ฐ’ everybody

๋ฌต์‹œ์  ํ˜•๋ณ€ํ™˜

var number = 1234;
var str = "567";
alert(number+str); // ์ถœ๋ ฅ ๊ฐ’ 123456
                   // ์ˆซ์ž์™€ ๋ฌธ์ž์˜ ์—ฐ์‚ฐ์ด์ง€๋งŒ ๋ฌต์‹œ์  ํ˜•๋ณ€ํ™˜์„ ํ†ตํ•ด ๋ฌธ์ž๋กœ ์ถœ๋ ฅ

์ฃผ์„ / ์ค„ ๋ฐ”๊ฟˆ๊ณผ ์—ฌ๋ฐฑ

์ฃผ์„์„ ์ž์ฃผ ํ™œ์šฉํ•˜์—ฌ ํšจ์œจ์ ์ธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์ž

์ฃผ์„

์•ž์— // ๋ฅผ ์‚ฌ์šฉ (ํ•œ ์ค„)
/*
์—ฌ๋Ÿฌ์ค„ ์ฃผ์„
์—ฌ๋Ÿฌ์ค„ ์ฃผ์„โ€‹
์—ฌ๋Ÿฌ์ค„ ์ฃผ์„โ€‹
 */
โ€‹
//์Šคํฌ๋ฆฝํŠธ๋ฅผ ์„ค๋ช…ํ•˜๋˜๊ฐ€, ์‹์˜ ๊ฒฐ๊ณผ๋ฅผ ์ฃผ์„์œผ๋กœ ์ฝ”๋“œ์— ํ‘œํ˜„๊ฐ€๋Šฅ, ์‹์˜ ๊ธฐ๋Šฅ ์ˆจ๊น€
โ€‹//์ฃผ์„ ์‚ฌ์šฉ์„ ๊ผญํ•˜์ž!!!

์ค„๋ฐ”๊ฟˆ

( ; ) ์„ธ๋ฏธ์ฝœ๋ก ์€ ๋ช…๋ น์ด ๋๋‚ฌ๋‹ค๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค. ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ ๋ช…๋ น์ด ์ ์šฉ(ํ•œ์ค„์— ํ•œ ์ฝ”๋“œ)
์„ธ๋ฏธ์ฝœ๋ก ์„ ์‚ฌ์šฉ์‹œ ํ•œ์ค„์— ์—ฌ๋Ÿฌ ์ฝ”๋“œ ๊ฐ€๋Šฅํ•˜๋‹ค.

๋น„๊ต ( ์กฐ๊ฑด๋ฌธ์ด๋ž‘ ์ ์šฉ์‹œ ํ™œ์šฉ์„ฑ UP)


โ€‹ โ€‹์—ฐ์‚ฐ์ž / a(๋ณ€์ˆ˜) = 3(๊ฐ’) ์ด๋‹ค

๋น„๊ต ์—ฐ์‚ฐ์ž

  • == / Equal operator has (๋™๋“ฑ ์—ฐ์‚ฐ์ž) - ์‚ฌ์šฉ x

โ€‹ ๋™๋“ฑํ•œ ์—ฐ์‚ฐ์ž๋กœ ์ขŒํ•ญ๊ณผ ์šฐํ•ญ์„๋น„๊ตํ•ด์„œ ์„œ๋กœ ๊ฐ’์ด ๊ฐ™๋‹ค๋ฉด true ๋‹ค๋ฅด๋‹ค๋ฉด false๊ฐ€ ๋œ๋‹ค.

  • === โ€‹/ Strict equal operator (์ผ์น˜ ์—ฐ์‚ฐ์ž) - ์ •ํ™•์„ฑ์ด ๋” ๋†’์Œ

๊ฐ’๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ฐ์ดํ„ฐ(number, string)์— ์ข…๋ฅ˜ ๋˜ํ•œ ๊ฐ™์•„์•ผํ•จ.

not ์—ฐ์‚ฐ์ž

  • ( != ) / ( !== ) ! ๋Š” ๋ถ€์ •์„ ์˜๋ฏธ

โ€‹

Leave a comment