[Day4] JS 4 - λ¬Έμμ΄ κ²μ, μ«μ, λ°°μ΄, λ μ§
[Day4] JS 4 [11/23]
js λ¬Έμμ΄ : κ²μ
λ¬Έμμ΄ μΌμΉ
let str = "μλ
νμΈμ, νκΈΈλ μ
λλ€. - νκΈΈλ μ -";
console.log( str.indexOf("νκΈΈλ", 0) ); // 7
console.log( str.indexOf("νκΈΈλ") ); // 7
//console.log( str.lastIndexOf("νκΈΈλ", from) ); // 7
console.log( str.lastIndexOf("νκΈΈλ") ); // 18
// μ°Ύλ λ¬Έμμ΄μ΄ μλ κ²½μ° : -1 λ°ν
// indexOf(), lastIndexOf()μ search()μ μ°¨μ΄μ : μ κ·ννμ
console.log( str.search(/νκΈΈλ/) ); // 7
console.log( str.match("κΉκΈ°μ") ); // μΌμΉνλ λ¬Έμμ΄μ΄ μλ κ²½μ° : null λ°ν
console.log( str.match(/νκΈΈλ/ig) );
// alert( typeof str.match(/νκΈΈλ/ig) ); // object λ°°μ΄
// ES 2020 μλ‘ μΆκ°λ λ©μλ
//matchAll() μΌμΉνλ κ²°κ³Όλ₯Ό ν¬ν¨νλ λ°λ³΅μ(iterator)λ₯Ό λ°ννλ ν¨μ
const iterator = str.matchAll( /νκΈΈλ/g );
// μλ° : console.log( Arrays.toString( λ°°μ΄λͺ
) )
console.log( Array.from( iterator ) );
// ES6 μλ‘ μΆκ°λ λ©μλ
// IE μ§μλμ§ μλλ€.
// μΌμΉνλ λ¬Έμμ΄μ ν¬ν¨νκ³ μλμ§ μ¬λΆλ₯Ό boolean νμΌλ‘ λ°ν.
console.log( str.includes("νκΈΈλ") ); // true
var url = "www.sist.co.kr";
// ES6 μλ‘ μΆκ°λ λ©μλ
// http:// λ¬Έμμ΄λ‘ μμ
// ?? λ¬Έμμ΄λ‘ λλλ
console.log( url.startsWith( "http://") ); // false
console.log( url.endsWith( "co.kr") ); // true
μ΄μ€μΌμ΄νλ¬Έμ
let text = "he\'s ~~";
//let text = 'he\'s ~~'; // λ¬Έμμ΄ λ΄λΆμ ' νλ°μ΄νλ₯Ό μ¬μ©ν΄μΌ λλ€λ©΄
-λ¬Έμμ΄ λ³μ μ€κ°μ λ€μ΄κ°κ²-
var name = "νκΈΈλ";
var age = 20;
// μ΄λ¦μ 'νκΈΈλ'μ΄κ³ , λμ΄λ 20μ΄μ΄λ€.
// var result = "μ΄λ¦μ '"+name+"'μ΄κ³ , λμ΄λ "+age+"μ΄μ΄λ€.";
// Java String.format( "μ΄λ¦μ '%s'μ΄κ³ , λμ΄λ %dμ΄μ΄λ€." , name, age);
// printf( format, name, age);
// js μμλ λ³μλ₯Ό μ¬μ©ν΄μ μΆλ ₯ν μ μλ€μ...
// ` λ°±ν±λ¬Έμ
var result = ` > μ΄λ¦μ '${ name }'μ΄κ³ , λμ΄λ ${ age }μ΄μ΄λ€. `;
// console.log( result );
-foreach-
let header = "TEST";
let html = `<h3>${ header}</h3>`;
let tags = ["javascript", "jquery", "java"]; // js λ°°μ΄
// let tags = {}; // js κ°μ²΄
// java foreach문
// js forin λ¬Έ
// js forof λ¬Έ
for (let tag of tags) {
html += `<li>${ tag }</li>`;
} // for
$("#demo").html( html );
js μ«μ (Number)
- js μ«μ - ( X int, short, long, float, double )
- μ μ, μ€μ ꡬλΆμμ΄ μ μ₯. - number νμ
- js λ νμ 64λΉνΈ μ μ₯
var n = 3;
var n = 3.14;
var n = 3e+5;
// 3 + 5 8
// "3" + 5 "35"
// 3 + "5" "35"
// 1 + 3 + "5" "45"
// μ«μ => λ¬Έμμ΄ νλ³ν
// 7 + "" "7"
// + λ§μ
, λ¬Έμμ΄ μ°κ²°μ°μ°μ.
// + μ μΈν μ«μ κ΄λ ¨ μ°μ°μλ μλμΌλ‘ λ¬Έμμ΄μ μ«μλ‘ λ³ννλ €κ³ νλ€.
var a = "100";
var b = "10";
console.log( a - b ); // 100/10 = 10
console.log( a * b ); // 100/10 = 10
console.log( a / b ); // 100/10 = 10
-NaN (not a number) 리ν°λ΄-
// console.log( 100 / "apple" ); // NaN ( Not a Number) 리ν°λ΄
// console.log( typeof NaN ); // number
console.log( 100 / 0 ); // Infinity
console.log( 100 % 0 ); // NaN
// isNaN()
console.log( isNaN( 100 % 0 )); // true
console.log( isNaN( "100" )); // false
console.log( isNaN( "100a" )); // true
// [λ¬Έμ ] μ
λ ₯λ°μ κ°μ΄ μ«μλ§ μ
λ ₯νλ 체ν¬νκ³ μΆλ€ - isNaN()
console.log( NaN + 5 ); // NaN
console.log( NaN + "5" ); // "NaN5"
-μ§μ-
// jsμμ Oxλ₯Ό λΆμ΄λ©΄ 16μ§μλ‘ ν΄μνλ€.
let x = 0xFF;
// jsμμ Oλ₯Ό λΆμ΄λ©΄ 8μ§μλ‘ ν΄μνλ€.
let y = 07;
let z = 10;
console.log( z.toString(2) ); // "1010"
console.log( z.toString(8) ); // "12"
console.log( z.toString(16) ); // "a"
-μ«μ κ°μ²΄- μ±λ₯ X
// var num = 123; // number
var num = new Number(123); // object X μ±λ₯ λ¨μ΄μ§λ€.
// Java
//String name = "νκΈΈλ";
//String name = new String("νκΈΈλ");
-64λΉνΈ μ«μ-
// js μ«μ : 64λΉνΈ
let xx = BigInt(μ«μ);
js μ«μ ν¨μ
1. toString() 7.toString() "7"
var n = 7 + ""; // "7"
var m = 10;
m.toString(); // "10"
2. toExponential() λ°μ¬λ¦Όλκ³ + μ§μ νκΈ°λ² + "" λ¬Έμμ΄ λ³ν
// toExponential() λ°μ¬λ¦Ό + μ§μνν + λ¬Έμμ΄ λ°ν.
var n = 9.656;
// 2,4,6 λ§€κ°λ³μλ μμμ λ€μ λ¬Έμμ μλ₯Ό μ μνλ€.
// λ§€κ°λ³μλ₯Ό μ§μ νμ§ μμΌλ©΄ λ°μ¬λ¦Όνμ§ μλλ€.
//console.log( n.toExponential(2) ); // 9.66e+0
//console.log( n.toExponential(4) ); // 9.6560e+0
//console.log( n.toExponential(6) ); // 9.656000e+0
3. toFixed() λ°μ¬λ¦Ό + "" λ¬Έμμ΄ λ³ν
console.log( n.toFixed(0) ); // 10
console.log( n.toFixed(2) ); // 9.66 μ§μνν X
console.log( n.toFixed(4) ); // 9.6560 μ§μνν X
console.log( n.toFixed(6) ); // 9.656000
4. toPrecision() μ§μ λ κΈΈμ΄λ‘ μμ±λ μ«μλ‘ λ°ν.
console.log( n.toPrecision() ); // 9.656
console.log( n.toPrecision(2) ); // 9.7
console.log( n.toPrecision(4) ); // 9.656
console.log( n.toPrecision(6) ); // 9.65600
5. valueOf() X μ«μ λ³ν
6. Number()
// Number() λ©μλ : js λ³μ -> μ«μ λ³ν
// μ«μ λ³νν μ μμΌλ©΄ NaN λ°ν.
// λ μ§λ₯Ό μ«μλ‘ λ³νν μ λ μλ€.
console.log( Number(true) ); // boolean(true) -> 1
console.log( Number(false) ); // false -> 0
console.log( Number("10") ); // "10" -> 10
console.log( Number("10.33") ); // "10.33" -> 10.33
console.log( Number(" 10") ); // " 10" -> 10
console.log( Number("10 ") ); // "10 " -> 10
console.log( Number("admin") ); // NaN
console.log( Number("10 33") ); // NaN
console.log( Number("10,33") ); // NaN
// λ μ§λ₯Ό μ«μλ‘ λ³νν μ λ μλ€.
console.log( Number("2022-01-22") ); // NaN
// 1970.1.1 μ΄ν msκ°μ λ°ν
console.log( Number( new Date( "2022-01-22") ) ); // 1642809600000
7. parseInt()
// parseInt() λ©μλ : λ¬Έμμ΄μ ꡬ문 λΆμν΄μ μ μ λ°ν
console.log( parseInt( "10" ) ); // "10" -> 10
console.log( parseInt( "-10" ) ); // "-10" -> -10
console.log( parseInt( "10.33" ) ); // "10.33" -> 10
// Number() NaN
console.log( parseInt( "10 33" ) ); // "10 33" -> 10
console.log( parseInt( "10,33" ) ); // "10,33" -> 10
console.log( parseInt( "10abcde" ) ); // "10adbcde" -> 10
console.log( parseInt( "year 100" ) ); // "year 100"-> NaN
console.log( parseInt( "100 year" ) ); // "year 100"-> 100
8. parseFloat()
// parseFloat() λ©μλ : λ¬Έμμ΄μ ꡬ문 λΆμν΄μ μ«μ( μ μ , μ€μ ) λ°ν
console.log( parseFloat( "10" ) ); // "10" -> 10
console.log( parseFloat( "-10" ) ); // "-10" -> -10
console.log( parseFloat( "10.33" ) ); // "10.33" -> 10.33
// Number() NaN
console.log( parseFloat( "10 33" ) ); // "10 33" -> 10
console.log( parseFloat( "10,33" ) ); // "10,33" -> 10
console.log( parseFloat( "10abcde" ) ); // "10adbcde" -> 10
console.log( parseFloat( "year 100" ) ); // "year 100"-> NaN
console.log( parseFloat( "100 year" ) ); // "year 100"-> 100
9. isInteger()
var n = 10;
console.log( Number.isInteger( n ) ); // true
n = 10.33;
console.log( Number.isInteger( n ) ); // false
js λ°°μ΄
1. λ°°μ΄ κ°λ
2. λ°°μ΄ μ¬μ© λͺ©μ
3. λ°°μ΄ μ μΈ νμ X
[js] 첫 λ²μ§Έ λ°©λ²
var cars = [];
cars[0] = "BMW";
cars[1] = "KIA";
const cars = [
"BMW"
, "KIA"
, "Volvo"
];
[js] λ λ²μ§Έ λ°©λ²
const cars = new Array();
const cars = new Array("BMW", , "KIA" , "Volvo");
-λ°°μ΄μμ μ κ·Ό-
// int [] m = {1,3,5,4,2};
// m[2]
// m[2] = 100;
const m = [1,3,5,4,2];
// (1) 2λ²μ§Έ μμ...
// console.log( m[2] ); // 5
// (2) 2λ²μ§Έ μμμ κ°μ 100μΌλ‘ λ³κ²½
m[2] = 100;
console.log( m[2] ); // 100
// (3) λ°°μ΄μ λͺ¨λ μμλ₯Ό μΆλ ₯.
// console.log( m ); // [1, 3, 100, 4, 2]
// (4) λ°°μ΄μ νμ
// jsμμ λ°°μ΄λ κ°μ²΄λ‘ μΈμνλ€.
console.log( typeof m ); // object
// (5) μμ μΆκ° 55
// λ°°μ΄λͺ
.length == λ°°μ΄ν¬κΈ°
m[m.length] = 55;
m[m.length] = 65;
m[m.length] = 75;
console.log( m );
// (7) λ°°μ΄ μ λ ¬
m.sort();
console.log( m ); // 1, 100, 2,3,4,5 λ¬Έμμ΄ μ€λ¦μ°¨μ μ λ ¬
// (8) λ§μ§λ§ μμ μ»μ΄μ€κΈ°.
// m[m.length-1]
// (9) λͺ¨λ λ°°μ΄μ μμ μΆλ ₯.
for (var i = 0; i < m.length; i++) {
console.log( i +" : " + m[i] );
}
// (10)
m[m.length] = "Benz"; // λ¬Έμ
m[m.length] = Date.now; // λ μ§
m[m.length] = function (){ }; // ν¨μ
m[m.length] = [1,2,3]; // λ°°μ΄
-λ°°μ΄κ³Ό κ°μ²΄ μ°¨μ΄-
const person = ["admin", 20];
var name = person[0];
var age = person[1];
// js object
const person = {
name:"admin" ,
age : 20
};
person.name;
person["name"];
λ°°μ΄ λ©μλ
- κΈ°λ₯, 리ν΄κ°, λ§€κ°λ³μ ( 3κ°μ§ )
-λ°°μ΄ν¬κΈ°, foreach, push, isArray-
var fruits = ["Banana", "Orange", "Apple", "Mango"];
// console.log( fruits.length ); // λ°°μ΄ ν¬κΈ° 4
/* [1λ²]
var text = "<ul>";
for (var i = 0; i < fruits.length; i++) {
text += "<li>" + fruits[i] + "</li>";
} // for
text += "</ul>";
*/
// [2λ²] Array.forEach()
var text = "<ol>";
fruits.forEach(function(elt, i, array) {
// console.log( elt + " / " + i + " / " + array)
text += "<li>" + elt + "</li>";
})
text += "</ol>";
$("#demo").html( text );
// 1. λ°°μ΄ μμ μΆκ° : push()
// fruits[fruits.length] = "xxx"; X
fruits.push("Lemon");
// 2. νμ
μ΄ λ°°μ΄ νμΈ : ES5 Array.isArray()
// console.log( typeof fruits ); // object
// console.log( Array.isArray( fruits ) ); // true
// instanceof μ°μ°μ.
// console.log( " > " + fruits instanceof Array ); // true
-toString, join-
// [ λ°°μ΄ -> λ¬Έμμ΄ λ³ν toString() ]
// 첫 λ²μ§Έ.
// "Banana,Orange,Apple,Mango,Lemon"
// κ° μμκ° μ½€λ§(μΌν)λ‘ κ΅¬λΆλμ΄ λ¬Έμμ΄λ‘ λ³ν.
// console.log( fruits.toString() );
// λ λ²μ§Έ - join() ***
// "Banana - Orange - Apple - Mango - Lemon" seperator (ꡬλΆμ)
// console.log( fruits.join(" - ") );
// Banana</li><li>Orange</li><li>Apple</li><li>Mango</li><li>Lemon
// console.log( fruits.join("</li><li>") );
var text = "<ol><li>";
text += fruits.join("</li><li>");
text += "</li></ol>";
$("#demo").html( text );
-push, pop-
// λ°°μ΄μ κ°μ₯ λ§μ§λ§ μμμ μλ‘μ΄ μμλ₯Ό μΆκ° - 리ν΄κ° λ°°μ΄μ ν¬κΈ° push()
console.log( fruits.push("XXX") ); // 6
console.log( fruits.toString() );
// λ°°μ΄μ κ°μ₯ λ§μ§λ§ μμλ₯Ό μ»μ΄μ€κΈ° - pop() + κ°μ₯ λ§μ§λ§ μμ μ κ±°.
// console.log( fruits[fruits.length - 1] );
console.log( fruits.pop() );
console.log( fruits.toString() );
sort()
shift()
unshift()
concat()
splice()
-shift, delete-
var m = [3,5,2,4,1];
console.log( m.toString() );
// [ shift() ] >> [<<1 ] >>> μ리 μ΄λ
// 첫 λ²μ§Έ μμλ μ κ±°λκ³ λλ¨Έμ§ μμλ μΈλ±μ€ -1 μ΄λ
// 0[3] 1[5] ~ 4[1]
// 0[5] ~ 3[1]
// console.log( m.shift() ); // 3 첫 λ²μ§Έ μμλ₯Ό λ°ν
// [ unshift() ]
// m.push(100) λ§μ§λ§ μμ μΆκ°
// m.unshift(100); // 첫 λ²μ§Έ μμμ μΆκ° + μμ λ€λ‘ μΈλ±μ€ + 1 μ΄λ
// λ°°μ΄ μμ μ κ±°(μμ )
// shift() 첫 λ²μ§Έ μμ μ κ±°
// pop() λ§μ§λ§ λ²μ§Έ μμ μ κ±°
// m[1] = -1; μ κ±°νλ€λ μλ―Έλ‘ νΉμ κ°μ μμ .
// 3, undefined ,2,4,1
// delete m[1];
var n = [100,200,300];
var s = [7,8,9];
// 4. m λ°°μ΄κ³Ό n λ°°μ΄μ λ³ν©(μ°κ²°)ν΄μ μλ‘μ΄ λ°°μ΄μ λ°ν : concat()
// 3,5,2,4,1,100,200,300
var mns = m.concat(n, s);
// console.log( mns.toString() );
-splice-
// 3,5 ,2,4,1
// 2(100),3(200)
// 3,5,100,200,2,4,1
// λ°°μ΄μ μ νλͺ©μ μ½μ
// unshift() : 첫 μμ μΆκ°
// push() : λ§μ§λ§ μμ μΆκ°
// splice() μ€κ° μμ 1κ° μ΄μ μΆκ°(μ½μ
)
// μ€νλΌμ΄μ€() == μ¬μ μ μΈ μλ―Έ ( μλ€ , λΆμ΄λ€. )
// pos μ½μ
μμΉ
// amount μ κ±° μ
// newelt μλ‘μ΄ μμ
m.splice(pos, amount, newelt)
// 3,5,100,200,2,4,1
m.splice(2, 0, 100, 200);
// 3,5,2,4,1
// 3,5,100,200,1
m.splice(2, 2, 100, 200);
// 3,5,[2,4],1 2λ²μ§Έ λΆν° 2κ°μ μμ μ κ±°
// 3,5,1
m.splice(2, 2);
console.log( m.toString() );
-slice, splice-
console.log( m );
// m.splice() μλ€.
// m.slice() μ‘°κ°λ΄λ€.
// var n = m.slice(1, 3); // 1 <= < 3
var n = m.slice(1); // 1 <= to λ§μ§λ§ μμ
console.log( n ) ; // [5,2]
sort() κΈ°λ³Έ asc
reverse() μμ μμ λ°κΎΈλ ν¨μ
let fruits = ["Banana", "Orange", "Apple", "Mango"];
// "Banana,Orange,Apple,Mango"
console.log( fruits.toString() );
// 1. λ°°μ΄ μ λ ¬ + asc
// fruits.sort();
// 2. λ°°μ΄ μ λ ¬ + desc
// fruits.sort(function(a, b) { })
// λ°°μ΄μ μμλ₯Ό λ°λλ‘ λ°κΎΈλ ν¨μ
// "Mango,Apple,Orange,Banana"
// "Orange,Mango,Banana,Apple" λ΄λ¦Όμ°¨μ μ λ ¬
fruits.sort()
fruits.reverse();
// [A]pple,[B]anana,[M]ango,[O]range μ€λ¦μ°¨μ μ λ ¬
console.log( fruits.toString() );
// μ«μ λ°°μ΄ μ μΈ
var m = [3, 5, 10, 2, 4, 1 , 29];
console.log( m.toString() ) ; // 3,5,10,2,4,1,29
// m.sort(); μ΄μ ? μ«μλ₯Ό λ¬Έμμ΄λ‘ μ λ ¬..
// 1,2,3,4,5,10,29 μ€λ¦μ°¨μ
/*
m.sort(function(a, b) {
// return a - b; // μμ, μμ , 0 μ€λ¦μ°¨μ
return b - a; // λ΄λ¦Όμ°¨μ
});
*/
// λλ€μ
m.sort( (a, b) => a-b );
console.log( m.toString() ) ; // "1","10","2","29","3","4","5"
-λ°°μ΄ μκΈ°(Math.random)
// 무μμλ‘ λ°°μ΄ μκΈ°.
// js 0.0 <= Math.random() μ€μ < 1
m.sort( () => 0.5 - Math.random() );
console.log( m.toString() ) ;
- js : Math κ°μ²΄ + random() λ©μλ
var max = Math.max(...m) ; // 29
// [ apply() ν¨μ ? ] call() λΉκ΅ν΄μ μ€λͺ
...
max = Math.max.apply(null, m); // 29
console.log( max );
var min = Math.min(...m) ; // 1
min = Math.min.apply(null, m);
console.log( min );
-κ°μ²΄ λ°°μ΄-
// κ°μ²΄ λ°°μ΄ μ μΈ
var persons = [
{name:"νκΈΈλ", age:20},
{name:"λ°μλ¦°",age:25},
{name:"μ΄μμΈ",age:18}
];
// 1. λμ΄ μμΌλ‘ μ€λ¦μ°¨μ μ λ ¬ν΄μ μΆλ ₯.
//console.log( persons[0].age );
//console.log( persons[0]["age"] );
persons.sort(function( o1, o2) {
return o1.age - o2.age;
})
// console.log( persons.toString() );
// console.log( persons );
// 2. μ΄λ¦μμΌλ‘ μ€λ¦μ°¨μ μ λ ¬..
console.log("===2===");
//console.log( "μ΄μμΈ" - "νκΈΈλ" ); // NaN
//console.log( "μ΄μμΈ" > "νκΈΈλ" ); // false
//console.log( Number( "μ΄μμΈ" > "νκΈΈλ" ) ); // false
persons.sort(function( o1, o2) {
if( o1.name > o2.name ) return 1;
else if( o1.name < o2.name ) return -1;
else 0;
})
console.log( persons );
λ°°μ΄ λ©μλ
1. forEach()
λ°°μ΄μ κ° μμ λ§λ€ ν λ²μ© ν¨μλ₯Ό νΈμΆν΄μ λ°λ³΅ μ²λ¦¬.
2. map()
λ°°μ΄μ κ° μμμ ν¨μλ₯Ό μ€ννμ¬ μλ‘μ΄ λ°°μ΄μ μμ±νλ ν¨μ
3. filter()
νν°λ§λ μμλ§μ κ°λ μλ‘μ΄ λ°°μ΄μ μμ±νλ ν¨μ
4. reduce()
λ°°μ΄μ κ° μμλ₯Ό μ€ννλ ν¨μμμ λ¨μΌ κ°μ μμ±νλ ν¨μ
5. every()
λ°°μ΄μ λͺ¨λ μμκ° ν μ€νΈλ₯Ό ν΅κ³Όνλμ§ μ¬λΆ νμΈνλ ν¨μ
6. some()
λ°°μ΄μ μΌλΆ μμλΌλ ν μ€νΈλ₯Ό ν΅κ³Όνλ©΄ true/false λ°ννλ ν¨μ
7. indexOf() / lastIndexOf()
λ°°μ΄μμ μμμ κ°μ κ²μνκ³ κ²μν μμμ μΈλ±μ€κ°μ λ°ννλ ν¨μ ( - 1 )
8. find() / findIndex()
μμκ° μμ μΈλ±μ€
5 1
var m = [3,5,2,4,1];
첫 λ²μ§Έ 5λ³΄λ€ κ°κ±°λ ν° μλ₯Ό μ°Ύκ³ μΆλ€.
var num = m.find( function (elt, i, array){
return elt >=5;
} )
9. from()
κΈΈμ΄(length) μμ±μ΄ μλ κ°μ²΄ λλ λ°λ³΅ κ°λ₯ν κ°μ²΄μμ -> λ°°μ΄ λ°ννλ ν¨μ
λ¬Έμμ΄
λ°°μ΄
λ±λ±
10. keys()
λ°°μ΄μ ν€(μΈλ±μ€κ°)κ° μλ iterator κ°μ²΄λ₯Ό λ°ννλ ν¨μ
entries() key + value νμ
λ°°μ΄μ μΈλ±μ€κ° μμμ κ°
[ 0 , 3 ]
<script>
var m = [3,5,2,4,1];
// var ir = m.keys();
var ir = m.entries(); // μνΈλ¦¬ = key + value νμ
for (let n of ir) { // index 0/1/2/3/4 μΈλ±μ€κ°
console.log( n[1] );
}
/* JAVA
while( ir.hasNext()){
int n = ir.next();
}
*/
</script>
<script>
/*
var str = "μλ
νμΈμ.";
// console.log( str.length ); // 6
var arr = Array.from( str );
console.log( typeof arr); // object
console.log( arr.toString() ); // "μ,λ
,ν,μΈ,μ,."
*/
</script>
<script>
/*
var m = [3,5,2,4,1];
// 1. forEach()
m.forEach(function(elt, i, array) {
console.log( elt + " / " + i );
});
*/
</script>
<script>
/*
// 2. map()
var m = [3,5,2,4,1];
console.log( m.toString() ); // 3,5,2,4,1
// κ° μμμ κ°μ 2λ₯Ό κ³±ν΄μ μλ‘μ΄ λ°°μ΄ μμ±.
var newm = [];
for (var i = 0; i < m.length; i++) {
newm.push( m[i] * 2 );
};
// map() μ¬μ©
var newm = m.map(function(elt, i, array) {
return elt *3 ;
});
console.log( newm.toString() ); // 9,15,6,12,3
*/
</script>
<script>
/*
// 3. filter()
var m = [];
for (var i = 0; i < 10; i++) {
m.push( parseInt( Math.random() * 100 ) );
}
console.log( m.toString() );
// 50λ³΄λ€ ν° κ°μ -> μλ‘μ΄ λ°°μ΄ μμ±
var newm = [];
m.forEach(function(elt, i, array) {
if( elt >= 50 ) newm.push( elt );
})
console.log( newm.toString() );
var newm = m.filter(function(elt, i, array) {
return elt >= 50 ;
});
console.log( newm.toString() );
*/
</script>
<script>
/*
// 4. reduce()
var m = [3,5,2,4,1];
// λ°°μ΄μ μ΄ν©μ ꡬν΄μ μΆλ ₯.
var sum = 0;
for (var i = 0; i < m.length; i++) {
sum += m[i];
console.log( m[i] +"+" )
}
console.log( sum );
// m.reduceRight( ) μ€λ₯Έμͺ½ -> μΌμͺ½
var sum = m.reduce(function(sum, elt, i, array) {
return sum + elt;
} )
console.log( sum ); // 115
*/
</script>
<script>
// μ 보μ²λ¦¬κΈ°μ¬ μν
var m = [78, 60, 35, 89, 76];
// κ³Όλ½. 체ν¬
/*
for (var i = 0; i < m.length; i++) {
if( m[i] < 40 ){ // 40 λ―Έλ§
console.log("κ³Όλ½")
}
}
*/
var result = m.every(function(elt, i, array) {
return elt >=40 ;
})
console.log( result ); // false
</script>
arguments 컬λ μ , js λ μ§
[ js λ μ§ κ°μ²΄ : Date ]
1. μλ‘μ΄ λ μ§ κ°μ²΄λ₯Ό μμ±νλ 4κ°μ§ λ°©λ²
(1) new Date() : νμ¬ μμ€ν μ λ μ§ + μκ°.
(2) new Date(y, m, d, h, m, s, ms)
(3) new Date( ms ) 1970.1.1 00:00:00.000
(4) new Date( string date )
// [ js λ μ§ κ°μ²΄ : Date ]
// (1) new Date() : νμ¬ μμ€ν
μ λ μ§ + μκ°.
var now = new Date();
// Wed Nov 23 2022 16:12:30 GMT+0900 (νκ΅ νμ€μ)
$("#demo").html( now );
// (2) new Date(y, m, d, h, m, s, ms)
// var d = new Date(2018 , 11-1, 23); // 11μ
var d = new Date(2018 , 11-1 ); // λ μ§ μλ΅ 1μΌ
$("#demo").html( d );
// (3) new Date( ms ) 1970.1.1 00:00:00.000
var ms = Number(new Date());
// console.log( ms ); 1669187859080
var d = new Date( ms );
// Wed Nov 23 2022 16:18:18 GMT+0900 (νκ΅ νμ€μ)
$("#demo").html( d );
// (4) new Date( string date )
Sun Nov 25 2018 09:00:00 GMT+0900 (νκ΅ νμ€μ)
var d = new Date("2018-11-25");
var d = new Date("2018-11"); // 1μΌ
var d = new Date("2018"); // 1μ 1μΌ
$("#demo").html( d );
// GMT == 그리λμΉ νμ€μ
// UTC == νμ μΈκ³μ
// MM/DD/YYYY
// Wed Mar 25 2015 00:00:00 GMT+0900 (νκ΅ νμ€μ)
var d = new Date("03/25/2015");
var d = Date.parse("03/25/2015");
d.toString() ; // λ μ§ -> λ¬Έμμ΄ λ³ν
$("#demo").html( d.toDateString() ); // "Wed Mar 25 2015"
$("#demo").html( d.toUTCString() ); // "Tue, 24 Mar 2015 15:00:00 GMT"
$("#demo").html( d.toISOString() ); // "2015-03-24T15:00:00.000Z"
$("#demo").html( d.toLocaleDateString() ); // 2015. 3. 25.
$("#demo").html( d.toLocaleTimeString() ); // μ€μ 12:00:00
function sum(a, b, c){
console.log(" >> sum(3) ... " );
}
function sum(){
// forms 컬λ μ
// options 컬λ μ
// arguments 컬λ μ
: μΈμ(λ§€κ°λ³μ) 컬λ μ
κ°μ²΄
// λ±λ± links, images 컬λ μ
... ~
// console.log( arguments.length );
var result = 0;
for (var i = 0; i < arguments.length; i++) {
result += arguments[i];
}
return result;
}
// sum();
console.log( sum(1, 2) ); // 3
console.log( sum(1, 2, 3) ); // 6
console.log( sum(1, 2, 3, 4) ); // 10
<script>
var now = new Date();
// λ
λ
console.log( now.getFullYear() ); // 2022
// μ
console.log( now.getMonth() + 1 ); // 11
// μΌ
console.log( now.getDate() ); // 23
// μ
console.log( now.getHours() ); // 16
// λΆ
console.log( now.getMinutes() ); // 16
// μ΄
console.log( now.getSeconds() ); // 16
// λ°λ¦¬μΈμ»¨λ
console.log( now.getMilliseconds() ); // 16
// μμΌ
console.log( "μΌμνμλͺ©κΈν ".charAt( now.getDay() ) ); // μΌ(0) 1(μ) 2(ν) 3(μμμΌ) ~ 6(ν )
// λ μ§ μ€μ
/*
now.setFullYear(year);
now.setMonth(month) // 1 λ¬
now.setDate(date);
now.setHours(hour);
now.setXXX();
*/
</script>
<script>
// getTime() : 1669188846578 ( 1970.1.1 00:00:00.000 )
var ms = now.getTime();
alert( ms );
</script>
html - λ°°κ²½μ λ³κ²½
<select onchange="bc_change( this );">
<option>μ ννμΈμ.</option>
<option value="white">ν°μ</option>
<option value="red">λΉ¨κ°</option>
<option value="green">λ
Ήμ</option>
<option value="blue">νλμ</option>
</select>
function bc_change( selTag ){
/*
// document.querySelector("select");
var idx = selTag.selectedIndex; // 0 ~ 4
var op = selTag.options[idx];
var text = op.text;
var value = op.value;
*/
// alert( selTag.value ); == $("select").val()
document.bgColor = selTag.value;
}
<script>
var colors = ["white", "red", "green" , "blue"];
var $sel = $("<select></select>");
colors.forEach(function(elt, i, array) {
$sel.append( $("<option>"+ elt +"</option>") )
});
$sel.change(function() {
document.bgColor = $(this).val();
// $(this option:selected).val()
});
$sel.appendTo( $("body") );
</script>