계산기 (4)

<!doctype html>
<html>
<body>
<script>
var expression = prompt('계산식을 입력해 주세요');
var tokens = [];

function supportOperator(op){
return(op == '+' || op == '-')
}

function isOperator(value){
return supportOperator(value);
}

function parseExpression(){
var cursor = 0;
var lastCursorPosition = 0;

while(cursor < expression.length){
if(isOperator(expression[cursor])){
tokens.push(Number(expression.slice(lastCursorPosition, cursor)));
tokens.push(expression[cursor]);

lastCursorPosition = cursor + 1;
}
cursor = cursor + 1;
}
tokens.push(Number(expression.slice(lastCursorPosition, cursor)));
tokens.push('+'); // Fake operator
}
parseExpression();
var index = 0;
var sum = 0;
var operator = '+';

while(index < tokens.length){
if(isOperator(tokens[index])){
if(operator != ''){
if(operator == '+'){
sum = sum + tokens[index-1];
}else {
sum = sum - tokens[index-1];
}
}
operator = tokens[index];
}
index = index + 1;
}
console.log(sum);
</script>
</body>
</html>


'javascript' 카테고리의 다른 글

문제와 답 프로그램 (2)  (0) 2017.09.04
문제와 답 프로그램  (0) 2017.09.04
계산기 (3)  (0) 2017.09.04
계산기 (2)  (0) 2017.09.04
계산기  (0) 2017.09.04

계산기 (3)


<!doctype html>
<html>
<body>
<script>
var expression = prompt('계산식을 입력해 주세요');
var cursor = 0;
var lastCursorPosition = 0;
var tokens = [];

function supportOperator(op){
return(op == '+' || op == '-')
}

function isOperator(value){
return supportOperator(value);
}
while(cursor < expression.length){
if(isOperator(expression[cursor])){
tokens.push(Number(expression.slice(lastCursorPosition, cursor)));
tokens.push(expression[cursor]);

lastCursorPosition = cursor + 1;
}
cursor = cursor + 1;
}
tokens.push(Number(expression.slice(lastCursorPosition, cursor)));
tokens.push('+'); // Fake operator

var index = 0;
var sum = 0;
var operator = '+';

while(index < tokens.length){
if(isOperator(tokens[index])){
if(operator != ''){
if(operator == '+'){
sum = sum + tokens[index-1];
}else {
sum = sum - tokens[index-1];
}
}
operator = tokens[index];
}
index = index + 1;
}
console.log(sum);
</script>
</body>
</html>


'javascript' 카테고리의 다른 글

문제와 답 프로그램  (0) 2017.09.04
계산기 (4)  (0) 2017.09.04
계산기 (2)  (0) 2017.09.04
계산기  (0) 2017.09.04
천 단위 쉼표 표시  (0) 2017.09.04

계산기 (2)

<!doctype html>
<html>
<body>
<script>
var expression = prompt('계산식을 입력해 주세요');
var cursor = 0;
var lastCursorPosition = 0;
var tokens = [];
while(cursor < expression.length){
if(expression[cursor] == '+' || expression[cursor] == '-'){
tokens.push(Number(expression.slice(lastCursorPosition, cursor)));
tokens.push(expression[cursor]);

lastCursorPosition = cursor + 1;
}
cursor = cursor + 1;
}
tokens.push(Number(expression.slice(lastCursorPosition, cursor)));
tokens.push('+'); // Fake operator

var index = 0;
var sum = 0;
var operator = '+';

while(index < tokens.length){
if(tokens[index] == '+' || tokens[index] == '-'){
if(operator != ''){
if(operator == '+'){
sum = sum + tokens[index-1];
}else {
sum = sum - tokens[index-1];
}
}
operator = tokens[index];
}
index = index + 1;
}

console.log(sum);
</script>
</body>
</html>


1. 표시 부분 수정, 아래 5줄 삭제

'javascript' 카테고리의 다른 글

계산기 (4)  (0) 2017.09.04
계산기 (3)  (0) 2017.09.04
계산기  (0) 2017.09.04
천 단위 쉼표 표시  (0) 2017.09.04
구구단 반복문  (0) 2017.09.04

계산기

<!doctype html>
<html>
<body>
<script>
var expression = prompt('계산식을 입력해 주세요');
var cursor = 0;
var lastCursorPosition = 0;
var tokens = [];
while(cursor < expression.length){
if(expression[cursor] == '+' || expression[cursor] == '-'){
tokens.push(expression.slice(lastCursorPosition, cursor));
tokens.push(expression[cursor]);

lastCursorPosition = cursor + 1;
}
cursor = cursor + 1;
}
tokens.push(expression.slice(lastCursorPosition, cursor));

var index = 0;
var sum = 0;
var operator = '+';

while(index < tokens.length){
if(tokens[index] == '+' || tokens[index] == '-'){
if(operator != ''){
if(operator == '+'){
sum = sum + Number(tokens[index-1]);
}else if(operator == '-'){
sum = sum - Number(tokens[index-1]);
}
}
operator = tokens[index];
}
index = index + 1;
}
if(operator == '+'){
sum = sum + Number(tokens[index - 1]);
} else {
sum = sum - Number(tokens[index - 1]);
}
console.log(sum);
</script>
</body>
</html>


'javascript' 카테고리의 다른 글

계산기 (3)  (0) 2017.09.04
계산기 (2)  (0) 2017.09.04
천 단위 쉼표 표시  (0) 2017.09.04
구구단 반복문  (0) 2017.09.04
최종 결과물 만들 목표  (0) 2017.08.28

천 단위 쉼표 표시


1. while 문

<!doctype html>
<html>
<body>
<script>
var numberString = prompt('정수 숫자 값을 입력해 주세요');
var formatNumber = '';
var pos = numberString.length - 1;
var commaCount = 0;

while(pos >= 0){
if (commaCount == 3){
formatNumber = ',' + formatNumber;
commaCount = 0;
}
formatNumber = numberString.charAt(pos) + formatNumber;
pos = pos - 1;
commaCount = commaCount + 1;
}
console.log(formatNumber);
</script>
</body>
</html>



2. for 문

<!doctype html>
<html>
<body>
<script>
var numberString = prompt('정수 숫자 값을 입력해 주세요');
var formatNumber = '';
for (var pos = numberStirng.length - 1, commaCount = 0;pos >= 0; pos--, commaCount++){
if(commaCount == 3){
formatNumber = ',' + formatNumber;
commaCount = 0;
}
formatNumber = numberString.charAt(pos) + formatNumber;
}
console.log(formatNumber);
</script>
</body>
</html>


3. 배열 이용

<!doctype html>
<html>
<body>
<script>
var numberString = prompt('정수 숫자 값을 입력해 주세요');
var formatNumber = [];
for (var pos = numberStirng.length - 1, commaCount = 0;pos >= 0; pos--, commaCount++){
if(commaCount == 3){
formatNumber.push(',');
commaCount = 0;
}
formatNumber.push(numberString.charAt(pos));
}
console.log(formatNumber.reverse().join(''));
</script>
</body>
</html>


'javascript' 카테고리의 다른 글

계산기 (2)  (0) 2017.09.04
계산기  (0) 2017.09.04
구구단 반복문  (0) 2017.09.04
최종 결과물 만들 목표  (0) 2017.08.28
javascript 서비스 사이트  (0) 2017.08.28

구구단 반복문


1. while 이용 - 2단

<!doctype html>
<html>
<body>
<script>
var dan = 2;
var count = 1;
while(count <= 9){
console.log(dan * count);
count = count + 1;
}
</script>
</body>
</html>



2. 이중 while 이용 - 2단~9단

<!doctype html>
<html>
<body>
<script>
var dan = 2;
var count = 1;
while(dan <= 9){
while(count <= 9){
console.log(dan * count);
count = count + 1;
}
dan = dan + 1;
count = 1;
}
</script>
</body>
</html>



3. 이중 for 이용 - 2단~9단

<!doctype html>
<html>
<body>
<script>
var dan = 2;
var count = 1;
for(dan = 2; dan <= 9; dan++){
for(count = 1; count <= 9; count++){
console.log(dan * count);
}
}
</script>
</body>
</html>



4. 이중 for 이용 + 식 꾸미기 - 2단~9단

1) 

<!doctype html>
<html>
<body>
<script>
var dan = 2;
var count = 1;
for(dan = 2; dan <= 9; dan++){
for(count = 1; count <= 9; count++){
console.log(dan + ' * ' + count + ' = ' + dan * count);
}
}
</script>
</body>
</html>

2) 

<!doctype html>
<html>
<body>
<script>
var dan = 2;
var count = 1;
for(dan = 2; dan <= 9; dan++){
for(count = 1; count <= 9; count++){
console.log(`${dan} * ${count} = ${dan * count}`);
}
}
</script>
</body>
</html>


'javascript' 카테고리의 다른 글

계산기 (2)  (0) 2017.09.04
계산기  (0) 2017.09.04
천 단위 쉼표 표시  (0) 2017.09.04
최종 결과물 만들 목표  (0) 2017.08.28
javascript 서비스 사이트  (0) 2017.08.28

최종 결과물 만들 목표

http://todomvc.com/



'javascript' 카테고리의 다른 글

계산기 (2)  (0) 2017.09.04
계산기  (0) 2017.09.04
천 단위 쉼표 표시  (0) 2017.09.04
구구단 반복문  (0) 2017.09.04
javascript 서비스 사이트  (0) 2017.08.28

javascript 서비스 사이트



1) repl.it

화면 왼쪽이 코드, 오른쪽이 콘솔


2) jsfiddle.net

ui를 입힐 수 있다


3) babel

최신 javascript 문법으로 코드를 짜면 익스플로러9까지도 실행 가능하게 번역해줌



'javascript' 카테고리의 다른 글

계산기 (2)  (0) 2017.09.04
계산기  (0) 2017.09.04
천 단위 쉼표 표시  (0) 2017.09.04
구구단 반복문  (0) 2017.09.04
최종 결과물 만들 목표  (0) 2017.08.28

+ Recent posts