민주는 체육부장으로 체육시간이 되면 반 친구들이 제대로 키 순서대로 모였는지를 확인해야 한다. 그런데 요즘 민주는 그것이 너무 번거롭게 느껴져 한 번에 확인하고 싶어한다.
민주를 위해 키가 주어지면 순서대로 제대로 섰는지 확인하는 프로그램을 작성해보자.
(키는 공백으로 구분하여 입력됩니다.)
입출력
입력 : 176 156 155 165 166 169
출력 : NO
입력 : 155 156 165 166 169 176
출력 : YES
function line(heigth) {
let arr = heigth.split(' ');
let arr1 = heigth.split(' ');
let arr2 = arr.sort((x, y) => (x - y))
console.log(arr1)
console.log(arr2)
if (arr1 === arr2) {
return 'YES'
}
return 'NO'
}
let heigth = '176 156 155 165 166 169'
console.log(line(heigth))
공부필요한 부분: 객체 복사
let arr = heigth.split(' ');
let arr1 = arr
let arr2 = arr.sort((x, y) => (x - y))
위와 같이 코드를 작성하면 arr=arr1=arr2가 된다.
let arr1 = [...arr]
const unsorted = prompt('키를 입력하세요');
let sorted = "";
sorted = unsorted
.split(" ")
.sort(function(a, b) {
return a - b;
})
.join(" ");
if (unsorted === sorted) {
console.log("Yes");
} else {
console.log("No");
}
let user = {
name: "Jhon",
age: 23,
};
let admin = {};
//shallow copy
for (let key in user){
admin[key] = user[key];
}
admin.name = "park"
console.log(admin.name); // output : "Park"
console.log(user.name); // output : "Jhon"
let user = {
name: "Jhon",
age: 23,
};
let admin_obj = Object.assgin({}, user);
admin_obj.name="Park";
user.age=30;
console.log(admin_obj.name); // output : "Park"
console.log(user.name); // output : "Jhon"
console.log(admin_obj.age); // output : 23
console.log(user.age); // output : "30
let user = {
name: "Jhon",
age: 23,
};
let admin_spread = {...user};
admin_spread = "park";
user.age = 30;
console.log(admin_spread.name); // output : "Park"
console.log(user.name); // output : "Jhon"
console.log(admin_spread.age); // output : 23
console.log(user.age); // output : "30