Javascript Test01
01. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func(){
for( i=1; i<=7; i++){
for( j=1; j<=i; j++){
document.write(j);
}
document.write("<br>");
}
}
func();
}
์ค์ฒฉ for๋ฌธ์ ๋ํ ๋ฌธ์ ์ ๋๋ค. i๊ฐ 1์ฉ ์ฆ๊ฐํจ์ผ๋ก j๋ฅผ ์ถ๋ ฅํ ๋ ํ์๋ฆฌ์ฉ ๋์ด๋ฉ๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๋ต์ ์๋์ ๋์ค๋๋๋ก ๋์ต๋๋ค.
๊ฒฐ๊ณผ ๋ณด๊ธฐ
02. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func() {
let i = 10, hap = 0;
while (i > 1) {
if (i % 3 == 1) {
hap += i;1
}
}
document.write(hap);
}
func();
}
i๋ 10์์ 1์ฉ ๊ฐ์ํฉ๋๋ค. while๋ฌธ์ ์กฐ๊ฑด์์ i๋ 1๋ณด๋ค ํด ๋ if๋ฌธ์ ์กฐ๊ฑด, i๋ฅผ 3์ผ๋ก ๋๋์์ ๋ ๋๋จธ์ง๊ฐ 1์ด ๋์ค๋ฉด hap์ ๊ฐ์ ์ด์ i์ ๊ฐ์ ๋ํฉ๋๋ค. i๋ฅผ 3์ผ๋ก ๋๋ ๋๋จธ์ง๊ฐ์ด 1์ด ๋์ค๋ ๊ฒ์ 7,4,1๊ฐ ๋๊ณ ํฉ์ 12์ ๋๋ค.
๊ฒฐ๊ณผ ๋ณด๊ธฐ
03. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func(){
let a = [1,2,3,4,5,6,7,8,9], cnt = 0;
for( i=0; i<a.length; i++){
if(a[i] % 2 == 0){
cnt = cnt + 1;
}
}
document.write(cnt);
}
func();
} document.write(z);
}
for๋ฌธ์ ๋ฐฐ์ด์ ๋ํ ๋ฌธ์ ์ ๋๋ค. i<9 ์ผ ๋ a[i]๋ฅผ 2๋ก ๋๋์์๋ ๋๋จธ์ง๊ฐ 0์ด๋ฉด cnt์ 1์ฉ ๋ํฉ๋๋ค. ์กฐ๊ฑด์ ๋ง๋ a[i]=2,4,6,8์ด๋ฏ๋ก 1๋ฅผ ๋ค ๋ฒ ๋ํฉ๋๋ค.
๊ฒฐ๊ณผ ๋ณด๊ธฐ
04. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func(data, exp){
let result = 1;
for(i=1; i < exp; i++){
result = result * i;
}
document.write(result + data);
}
func(1, 5);
}
data, exp๋ณ์์ 1, 5 ๊ฐ์ ๋์ ํ๋ฉด for๋ฌธ์ด 1~4๊น์ง๋ก ์ง์ ๋์ด ์์๋๋ก 1, 2, 6, 24๊ฐ ๋์ค๋ฏ๋ก ์ต์ข ๊ฐ์ธ 24๊ฐ result๊ฐ์ด ๋ฉ๋๋ค. ์ต์ข ๊ฐ 24์ data = 1์ ๋ํด์ฃผ๋ฉด ์ ๋ต์ 25๊ฐ ์ถ๋ ฅ๋ฉ๋๋ค.
๊ฒฐ๊ณผ ๋ณด๊ธฐ
05. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func(){
let a = [2, 3, 2, 4, 5, 6, 7, 2, 3, 3, 2];
let value = 0;
for(i = 0; i < a.length; i++){
if(a[i] != 2){
value++
}
}
document.write(value);
}
func();
}
if(๋ฐฐ์ด a์ ์ธ๋ฑ์ค๊ฐ i์ ์์นํ ์๊ฐ 2๊ฐ ์๋๋ผ๋ฉด) value๊ฐ์ 1์ฉ ๋ํด์ค๋๋ค. [3, 4, 5, 6, 7, 3, 3] ์ด 7๊ฐ ์ด๋ฏ๋ก, value๊ฐ์ 1์ 7๋ฒ ๋ํ 7์ด ์ถ๋ ฅ๋ฉ๋๋ค.
๊ฒฐ๊ณผ ๋ณด๊ธฐ
06. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func(){
let i, j = 0;
for( i=0; i<5; i++){
j += i;
}
document.write(i);
document.write(j);
}
func();
}
i๊ฐ 5๊ฐ ๋ ๋๊น์ง ๊ณ์ ๋์ด๋๋ i๊ฐ์ ๋ํด j์ ์ ์ฅ์์ผ์ผ ํฉ๋๋ค.
๊ฒฐ๊ณผ ๋ณด๊ธฐ
07. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
function func(){
let a = 12, b = 8, c = 2, d = 3;
a /= b - c * d;
document.write(a);
document.write(a*b);
}
func();
a, b, c, d ๋ณ์์ ๊ฐ ๊ฐ์ ์ ์ฅ, 8 - 2 * 3 = 2 ๊ฐ์ผ๋ก a๊ฐ์ ๋๋๋ฉด 6์ด ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ a์ b๋ฅผ ๊ณฑํ๋ฉด 48์ด ๋์ต๋๋ค.
๊ฒฐ๊ณผ ๋ณด๊ธฐ
08. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
function func(){
let a = 0, sum = 0;
while( a < 10 ){
a++;
if(a % 2 == 1) continue;
sum += a;
}
document.write(sum);
}
func();
a๊ฐ 10์ด ๋ ๋๊น์ง a์ ๊ฐ์ ์ฆ๊ฐ์ํค๊ณ
๋ง์ฝ a๋ฅผ 2๋ก ๋๋์์ ๋ ๋๋จธ์ง๊ฐ 1์ด ๋๋ฉด ๊ฑด๋๋๋๋ค.
๊ฑด๋๋ด ๊ฐ์ ์ ์ธํจ a์ ๊ฐ์ sum์ ์ ์ฅํฉ๋๋ค.
a๋ฅผ 2๋ก ๋๋ ๋๋จธ์ง๊ฐ 1์ด ๋๋ ๊ฐ == 1, 3, 5, 7, 9 ์ฆ, ํ์๋ฅผ ๊ฑด๋๋ฐ๋ฉด
2+4+6+8+10 = 30
๊ฒฐ๊ณผ ๋ณด๊ธฐ
09. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func(){
let i = 0, sum = 0;
while( 1 ){
i++;
if( i > 10 ) break;
if( i % 5 == 0) continue;
sum += i;
}
document.write(sum);
}
func();
}
while(1)์ true์ด๋ ์คํ์ํต๋๋ค.
i์๊ฐ์ 1++๋ก 1๋ก ์์ํฉ๋๋ค.
์ฒซ๋ฒ์งธ if๋ฌธ์ ์ดํ์ i์ ๊ฐ์ 1~10
๋๋ฒ์งธ if๋ฌธ์ ๋ง์กฑํ๋ ๊ฐ์ 5, 10์ผ๋ก ์ด๋ฅผ ์ ์ธํ๊ณ ๋ํฉ๋๋ค.
๋ต์ 1+2+3+4+6+7+8+9๊ฐ ๋ฉ๋๋ค.
๊ฒฐ๊ณผ ๋ณด๊ธฐ
10. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
let num = 0;
while(num < 2000){
num++;
document.write(num);
if(num == 10){
break;
}
}
}
2000์ด๋ ์ซ์๋ ํจ์ ์
๋๋ค!
๋ณ์ num = 0์ ์ฒ์์ ++๋๊ธฐ ๋๋ฌธ์ 1๋ถํฐ ์์ํฉ๋๋ค.
num์ด 10์ด ๋ ๋๊น์ง 1์ฉ ์ฆ๊ฐ์ํต๋๋ค.
num์ด 10์ด ๋๋ฉด ๋ฉ์ถฅ๋๋ค.
๊ฒฐ๊ณผ ๋ณด๊ธฐ
11. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function solution(a, b) {
let num = a > b;
return num;
}
document.write(solution(5, 9));
}
5>9
๊ฒฐ๊ณผ ๋ณด๊ธฐ
12. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function solution(text) {
return text.split("").join("/").replace("s", "site");
}
document.write(solution("webs"));
}
1. split์ผ๋ก ํ๊ธ์์ฉ ๋๋๋ค
2. join์ผ๋ก ๋ถ์ธ๋ค (์ฌ์ด์ / ๋ฃ๋๋ค)
3. replace๋ก s๋ฅผ site๋ก ์นํํ๋ค
1. w,e,b,s
2. w/e/b/s
3. w/e/b/site
๊ฒฐ๊ณผ ๋ณด๊ธฐ
13. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
function func(){
let a = [1,2,3,4,5,6,7,8,9], cnt = 0;
for( i=0; i<a.length; i++ ){
if( a[i] % 2 == 0){
cnt = cnt + 1;
}
}
document.write(cnt);
}
func();
1. i๊ฐ 9๋ฅผ ๋์ง ์๋ 8์ด ๋ ๋๊น์ง i์ ๊ฐ์ด ๊ณ์ ์ถ๊ฐ๋๋ค.
2. ์กฐ๊ฑด์ ๋ง๋ a[i]์ ๊ฐ ์ค 2๋ก ๋๋์์๋ ๋๋จธ์ง๊ฐ 0์ธ ๊ฐ
3. if ์กฐ๊ฑด์ ๋ง๋ ํ์๋งํผ 1์ฉ ์ ์ฅํฉ๋๋ค.
4. ํด๋น ์กฐ๊ฑด์ ์ถฉ์กฑํ๋ ์ == 2,4,6,8 ์ด 4๊ฐ
๊ฒฐ๊ณผ ๋ณด๊ธฐ
14. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
function func(data, exp){
let result = 1;
for( i=1; i<exp; i++){
result = result * i;
}
document.write(result + data);
}
func(1, 5);
1. data == 1 / exp == 5 ๋์
2. i๊ฐ 4๊ฐ ๋ ๋๊น์ง for๋ฌธ ์ ๋ฐ๋ณต
3. 1, 2, 6, 24
4. 24+1 = 25
๊ฒฐ๊ณผ ๋ณด๊ธฐ
15. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func(){
let a = [2,3,2,4,5,6,7,2,3,3,2];
let value = 0;
for( i=0; i<a.length; i++){
if( a[i] != 2 ){
value++;
}
}
document.write(value);
}
func();
}
1. i๊ฐ 10์ด ๋ ๋๊น์ง a ๋ฐฐ์ด ์ค 2๊ฐ ์๋ ๋ฐ์ดํฐ๊ฐ ์์ผ๋ฉด
2. value์๋ฅผ ์ฆ๊ฐ์์ผ๋ผ
3. 2 ์๋ ๋ฐ์ดํฐ ๊ฐ์๋ 7๊ฐ
4. ์ ๋ต์ 7
๊ฒฐ๊ณผ ๋ณด๊ธฐ
16. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func(){
let i, j = 0;
for( i=0; i<=8; i++){
j += i;
}
document.write(j+i)
}
func();
}
1. i๊ฐ 8์ด ๋ ๋๊น์ง ๊ณ์ ๋์ด๋๋ i๊ฐ์ j์ ์ ์ฅ์ํต๋๋ค
2. j == 0+1+2+3+4+5+6+7+8
3. i์ ๊ฐ์๋ 0๋ถํฐ 8๊น์ง ์ด 9๊ฐ
4. 36 + 9 == 45
๊ฒฐ๊ณผ ๋ณด๊ธฐ
17. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func(){
let a = 12, b = 8, c = 2, d = 3;
a /= b - c * d;
document.write(a); // 6
}
func();
}
๋จ์ ์ฌ์น์ฐ์ฐ
๊ฒฐ๊ณผ ๋ณด๊ธฐ
18. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func13(){
let a, b, c, result;
a = 10;
b = 20;
c = 30;
result = a < b ? b/a : c;
document.write(result);
}
func13();
}
1. 10๋ณด๋ค 20์ด ํด ๊ฒฝ์ฐ b๋ฅผ a๋ก ๋๋ ๋ผ == 20/10 || ์๋ ๊ฒฝ์ฐ c ์ถ๋ ฅ
2. 20์ 10์ผ๋ก ๋๋๋ฉด 2๊ฐ ๋จ
๊ฒฐ๊ณผ ๋ณด๊ธฐ
19. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func(){
let a = 0, sum = 0;
while( a < 10 ){
a++;
if(a % 2 == 1) continue;
sum += a;
}
document.write(sum);
}
func();
}
1. a๊ฐ 10์ด ๋ ๋๊น์ง a๊ฐ ์ฆ๊ฐ
2. a๋ฅผ 2๋ก ๋๋ ๋๋จธ์ง๊ฐ 1์ด ๋๋ ๊ฐ ๊ฑด๋๋ฐ๊ณ ๊ทธ ๊ฐ์ ์ ์ธํ a๊ฐ sum์ ์ ์ฅ
3. a๋ฅผ 2๋ก ๋๋ ๋๋จธ์ง๊ฐ 1์ด ๋๋ ๊ฐ == 1, 3, 5, 7, 9 ์ด๊ฒ๋ค, ์ฆ ํ์ ๊ฑด๋๋
4. 2+4+6+8+10 == 30
๊ฒฐ๊ณผ ๋ณด๊ธฐ
20. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func(){
let i = 0, sum = 0;
while( 0 ){
i++;
if( i > 10 ) break;
if( i % 5 == 0) continue;
sum += i;
}
document.write(sum);
}
func();
}
ํจ์ ๋ฌธ์ ! 0์ด ๋ค์ด๊ฐ๊ธฐ ๋๋ฌธ์ ์คํ์ด ๋์ง ์๋๋ค. ์ ๋ต์ 0
๊ฒฐ๊ณผ ๋ณด๊ธฐ
21. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func(s){
let answer = "";
for(let x of s){
if( x != 'w') answer += '#';
else answer += x;
}
return answer;
}
let str = "webstoryboy";
document.write(func(str));
}
1. x ๋ณ์์ "webstoryboy" ๋ฌธ์์ด ์ ์ฅ
2. x ์ค 'w'๊ฐ ์๋ ๊ฒ๋ค์ '#'์ผ๋ก ๋ฐ๊พผ๋ค
3. "webstoryboy" ์ค w๊ฐ ์๋ ๊ฑธ ์ ๋ถ #์ผ๋ก ๋ฐ๊ฟ
๊ฒฐ๊ณผ ๋ณด๊ธฐ
22. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function func(s, t){
let answer = 0;
for(let x of s){
if(x !== t) answer++;
}
return answer;
}
let str = "wbestoryboy";
document.write(func(str, 't'));
}
1. x ๋ณ์์ "webstoryboy" ๋ฌธ์์ด ์ ์ฅ
2. x ์ค 't'๊ฐ ์๋ ๊ธ์์๋งํผ answer๊ฐ 1์ฉ ์ฆ๊ฐ์ํค๊ธฐ
3. t ์๋ ๊ธ์๊ฐ ์ด 10์
๊ฒฐ๊ณผ ๋ณด๊ธฐ
23. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function solution(n) {
var answer = [];
answer = n.toString().split('').reverse().map(val => parseInt(val));
return answer;
}
document.write(solution(12345))
}
1. n์ toString์ผ๋ก ์ซ์์์ ๋ฌธ์์ด๋ก ๋ฐ๊ฟ
2. split ์์ ''๋ฅผ ๋ฃ์ -> ํ๋ํ๋ ์ชผ๊ฐ์ง ['1', '2', '3', '4', '5'] ์ด๋ฐ ์์ผ๋ก...
3. reverse๋ฅผ ํตํด ๋ฐฐ์ด ์์ ๊ฐ์ ์ ๋ถ ๊ฑฐ๊พธ๋ก ์ ๋ ฌํจ ['5', '4', '3', '2', '1']
4. map(val => parseInt(val)) : ๋ค์ ๋ฌธ์์ด์ ์ซ์(์ ์)๋ก ๋ณํํ๊ณ
5. ๋ฐฐ์ด(๊ดํธ ์์ ๋ฐ์ดํฐ)ํํ๊ฐ ์๋ ๋ฐ์ดํฐ๋ฅผ ๋ฐํํด๋
6. ์ฆ, 5,4,3,2,1 ์ด๋ ๊ฒ ์ถ๋ ฅํจ.
๊ฒฐ๊ณผ ๋ณด๊ธฐ
23. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function solution(arr, divisor) {
var answer = [];
const div = arr.filter( el => el % divisor == 0 );
answer = div.length > 0 ? div.sort( (a, b ) => a - b ) : [-1];
return answer
}
document.write(solution([1,2,3,4,5], 2))
}
1. filter๋ก 2๋ก ๋๋ด์ ๋ ๋๋จธ์ง๊ฐ์ด 0์ธ (์ฆ 2์ ๋ฐฐ์์ธ) ๊ฐ์ ๊ณจ๋ผ๋ == 2, 4
2. div.length(2) > 0์ด ์ฐธ์ : ์ฐธ์ด๋ฉด div์์ ์์๋ฅผ a-b ์์๋ก ์ ๋ ฌํ๊ณ ๊ฑฐ์ง์ด๋ฉด -1 ์ถ๋ ฅ
3. a-b ์์๋๋ก [2, 4] ์ถ๋ ฅ๋จ
๊ฒฐ๊ณผ ๋ณด๊ธฐ
23. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function solution(numbers) {
let answer = 0;
for(let i=0; i<10; i++){
if(!numbers.includes(i)){
answer += i;
}
}
return answer;
}
document.write(solution([1,2,3,4,6,7,8,0]))
}
1. i ์์ 0๋ถํฐ 9๊น์ง
2. 0๋ถํฐ 9๊น์ง์ ์ซ์ ์ค์ numbers ๋ฐฐ์ด ์์ ์๋ ๊ฐ == 5,9
3. 5+9 == 14
๊ฒฐ๊ณผ ๋ณด๊ธฐ
23. ๊ฒฐ๊ด๊ฐ์ ์์ฑํ์์ค.
{
function solution(n) {
for(let i=1; i<n; i++) {
if(n%i === 1) return i;
}
}
document.write(solution(10))
}
1. i ์์ 0๋ถํฐ 9๊น์ง
2. 10์ 1~9๋ก ๋๋ด์ ๋ ๋๋จธ์ง๊ฐ 1์ธ ๊ฒฝ์ฐ i๋ฅผ ์ถ๋ ฅ == 10์ 3,9๋ก ๋๋ ๋ 1์ด ๋จ์
3. return ์์น๊ฐ for๋ฌธ ์์ ์์ผ๋ฏ๋ก 3์ด ๋์์ ๋ ๋ฐ๋ก ์ข
๋ฃ์์ผ์ 9๋ ๋ฌด์ํ๊ณ 3์ด ์ถ๋ ฅ๋จ
๊ฒฐ๊ณผ ๋ณด๊ธฐ
'์๋ฐ์คํฌ๋ฆฝํธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
MySQL (6) | 2022.09.15 |
---|---|
mouseenter / mouseover ์ ์ฐจ์ด (2) | 2022.09.06 |
์ ์ด์ฟผ๋ฆฌ ์คํ์ผ ๊ด๋ จ ๋ฉ์๋ (2) | 2022.09.06 |
์ ์ด์ฟผ๋ฆฌ ์คํ์ผ ๊ด๋ จ ๋ฉ์๋ (2) | 2022.09.05 |
์ ์ด์ฟผ๋ฆฌ ์์ฑ ๊ด๋ จ ๋ฉ์๋ (2) | 2022.09.05 |
๋๊ธ