- java - 언어설계 유사
- 자료
- 객체자료형
- 자료형의 종류
- 문자열 : '', ""
- 함수 :
- undefined : nullpoint exception
- 변수 : var ( var 있으면 지역변수 없의면 전역변수)
- 중복선언가능 (다른사람이 짜둔 코드를 가져오는경우 에러 가능성)
- 연산자
- 제어
- if
- witch
- for
- for in
- while
- do while
- break
- continue
- 중첩을 통해서 알고리즘을 만듦
- 함수
- 모듈 , 라이브러리
- 자료 , 제어
- 단위 처리 효과
- 사용자 정의 함수
- 선언적 함수
- 익명함수
- 변수로 선언가능
- 다른 함수의 파라미터, 리턴으로 사용가능
- →일급 함수(현대 언어들이 채택)
- 내장함수
- ...
- 객체
- 사용자 정의 객체(JSON)
- 라이브러리
- 내장
- 기본자료형
- Object
- Date
- ...
- BOM
- DOM : 브라우저객체모델의 document객체
- 외부추가
- JQuery
- http://processing.org/
1
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<script type="text/javascript">
//window 객체 속성과 메서드 출력 -- 브라우저마다 출력결과 다름
/* var output ='';
for(var key in window){
if(key != 'external'){
output += '* '+ key + ' : '+window[key] + '\n';
}
}
console.log(output); */
//각 속성 보기
console.log(window['screenTop']);
console.log(window.screenTop);
console.log(window['screenLeft']);
console.log(window.screenLeft);
console.log(window.location);
</script>
</body>
</html>
2
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<script type="text/javascript">
//window객체 함수
//alert('경고창'); //window.alert('경고창');
//새창
open("http://www.naver.com"); //사이즈가 없으면 탭으로 뜸
//top /left: 창의 위치
//width / height: 창의 크기
//...
open("http://m.naver.com", 'win','top = 300, left = 100, width = 500, height=500')
open("./window01.html", 'win','top = 300, left = 500, width = 500, height=500')
</script>
</body>
</html>
3
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
//Window객체 메서드
//클릭을 했을떄 새창 열기
var child;
function openWindow(){
child = open('', 'win','top = 100, left = 100, width = 500, height=500')
}
//클릭 했을때 창 닫기
function closeWindow(){
child.close(); //창을 변수선언했기 때문에 부모창에서 자식창을 제어할 수 있음
}
//클릭 했을때 창 고침
function reloadWindow(){
child.document.write('<b>부모에서 호출되어진 내용</b>')
}
//클릭 시 창 이동
function moveWindow(){
child.moveBy(10,10);
}
</script>
</head>
<body>
<a href="javascript:openWindow()"> 창 열기</a>
<a href="javascript:closeWindow()"> 창 닫기</a>
<a href="javascript:reloadWindow()"> 창 고침</a>
<a href="javascript:moveWindow()"> 창 이동</a>
</body>
</html>
4
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
//클릭을 했을떄 새창 열기고 3초 뒤 닫기
var child;
function openWindow(){
child = open('', 'win','top = 100, left = 100, width = 500, height=500')
setTimeout(function(){
child.close();
}, 3000);
//setTimeout(close,3000);
}
</script>
</head>
<body>
<a href="javascript:openWindow()"> 창 열고 닫기</a>
</body>
</html>
5
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<script type="text/javascript">
//screen 객체 속성
var output = '';
for(var key in screen){
output += '* '+ key + ' : '+screen[key]+'\n';
}
console.log(output);
//width, hight 화면 해상도
//availWidth, availHeight 메뉴바를 제외한 실제 높이
</script>
</body>
</html>
6
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
//location 객체 속성 //자바의 URL객체와 비슷
/* var output = '';
for(var key in location){
output += '* '+ key + ' : '+location[key]+'\n';
}
console.log(output); */
//location객체 메서드 href를 이용해서 화면전환 가능함
function goUrl(url){
location.href = url;
}
</script>
</head>
<body>
<a href="javascript:goUrl('http://www.naver.com')">네이버 바로가기</a><br>
</body>
</html>
7
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<script type="text/javascript">
//navigator 속성
//사용자 컴퓨터의 접속 환경을 알 수 있음
//접속 플렛폼을 알 수 있기 때문에, 모바일일 경우 알맞은 설정을 할수 있음
var output = '';
for(var key in navigator){
output += '* '+ key + ' : '+navigator[key]+'<br>';
}
document.write(output);
</script>
</body>
</html>
8
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<script type="text/javascript">
//history 속성
//과거에 접속한 브라우저를 알 수 있음
var output = '';
for(var key in history){
output += '* '+ key + ' : '+history[key]+'<br>';
}
document.write(output);
</script>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
function goURL(){
location.href = "http://www.naver.com";
}
//history.back()
function backURL(){
history.back();
//history.go(-1);
}
</script>
</head>
<body>
<a href="javascript:goURL()">네이버 바로가기</a><br>
<a href="javascript:backURL()">이전가기</a><br>
</body>
</html>
9
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<script type="text/javascript">
//document 속성
//charset 등을 확인 할 수 있음
var output = '';
for(var key in document){
output += '* '+ key + ' : '+document[key]+'<br>';
}
document.write(output);
</script>
</body>
</html>
10
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<script type="text/javascript">
//document 메서드
document.write('Hello JS');
document.write('Hello JS');
console.log(document.bgColor);
document.bgColor = 'darkgrey'; //배경색 변경
console.log(document.bgColor);
document.title = '새문서 제목'; //제목탭 변경
</script>
</body>
</html>
11
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
//document 객체 매서드
//자바스크립트가 HTML내용을 읽은뒤에 수행하도록 함 //없으면 배열이 생성되지 않았으므로 에러남
window.onload = function(){
//form태그는 forms안에 배열로 들어감
console.log(document.forms.length);
console.log(document.forms[0].action);
console.log(document.forms[1].action);
console.log(document.frm1.action); //지정해준 이름을 배열대신 사용가능
console.log(document.frm2.action);
}
//2번째 방법은 버튼을 클릭해서 함수를 호출하는 방법
function checkfrm(){
console.log(document.forms.length);
console.log(document.forms[0].action);
console.log(document.forms[1].action);
console.log(document.frm1.action);
console.log(document.frm2.action);
}
</script>
</head>
<body>
<form action="test1.jsp" name="frm1">
<input type='text'>
</form>
<form action="test2.jsp" name="frm2">
<input type='text'>
</form>
<!-- 클릭해서 자바스크립트 코드 수행 링크식, 버튼식 -->
<a href="javascript:checkfrm()">내용읽기</a>
<input type='button' value='내용읽기' onclick='checkfrm()'/>
<!--3번째 방법은 HTML이 끝난 뒤 자바스크립트 코드 써줌-->
<script type="text/javascript">
</script>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
//document 객체
//자바스크립트로 HTML 내용 읽기,변경
function checkfrm(){
console.log(document.frm1.id.type);
console.log(document.frm1.id.value);
console.log(document.frm1.passwd.type);
console.log(document.frm1.passwd.value);
}
function changefrm(){
document.frm1.id.value = 'testman';
document.frm1.passwd.value ='3456';
}
function lengthfrm(){
var str = document.frm1.id.value;
alert(str.length);
}
</script>
</head>
<body>
<form name="frm1">
아이디<input type='text' name='id' value='test' /><br>
비밀번호<input type='password' name='passwd' value='1234' /><br>
<input type='button' value='내용읽기' onclick='checkfrm()'>
<input type='button' value='내용변경' onclick='changefrm()'>
<input type='button' value='길이확인' onclick='lengthfrm()'>
</form>
</body>
</html>
12
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
function checkfrm(){
//체크박스 체크상태 가져오기
console.log(document.frm1.f1.checked);
console.log(document.frm1.f2.checked);
console.log(document.frm1.f3.checked);
console.log(document.frm1.f4.checked);
/*
console.log(document.frm1.f1.value); //체크박스 텍스트를 가져오려면 따로 value값 써두어야함
console.log(document.frm1.f2.value);
console.log(document.frm1.f3.value);
console.log(document.frm1.f4.value);
*/
//체크된 값을 보려면 if문 써줘야함
if(document.frm1.f1.checked) console.log(document.frm1.f1.value);
if(document.frm1.f2.checked) console.log(document.frm1.f2.value);
if(document.frm1.f3.checked) console.log(document.frm1.f3.value);
if(document.frm1.f4.checked) console.log(document.frm1.f4.value);
}
function checkfrm2(){
//console.log(typeof(document.frm1.f));
//console.log(document.frm1.f.length);
for(var i=0; i<document.frm1.f.length; i++){
if(document.frm1.f[i].checked){
console.log(document.frm1.f[i].value + '\n')
}
}
}
</script>
</head>
<body>
<form name='frm1'>
<!-- 체크박스 value 지정 -->
<input type="checkbox" name='f1' checked="checked" value='사과'>사과<br>
<input type="checkbox" name='f2' value='감귤'>감귤<br>
<input type="checkbox" name='f3' value='수박'>수박<br>
<input type="checkbox" name='f4' value='딸기'>딸기<br>
<input type="button" value='내용읽기' onclick='checkfrm()' /><br><br>
<!-- 이름이 같으면 배열화 됨 -->
<input type="checkbox" name='f' checked="checked" value='사과'>사과<br>
<input type="checkbox" name='f' value='감귤'>감귤<br>
<input type="checkbox" name='f' value='수박'>수박<br>
<input type="checkbox" name='f' value='딸기'>딸기<br>
<input type="button" value='내용읽기' onclick='checkfrm2()' />
</form>
</body>
</html>
13
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
//왼쪽 체크박스가 체크되어있으면 오른쪽 체크박스도 체크 되도록
function checkfrm(){
for(var i=0;i<4;i++){
if(document.frm1.f[i].checked==true){
document.frm1.f[i+4].checked = true;
}else{
document.frm1.f[i+4].checked = false;
}
}
}
</script>
</head>
<body>
<form name='frm1'>
<table>
<tr>
<td>
<input type="checkbox" name='f' checked="checked" value='사과'>사과<br>
<input type="checkbox" name='f' value='감귤'>감귤<br>
<input type="checkbox" name='f' value='수박'>수박<br>
<input type="checkbox" name='f' value='딸기'>딸기<br>
</td>
<td>
<input type="button" value='>' onclick='checkfrm()' />
</td>
<td>
<input type="checkbox" name='f' checked="checked" value='사과'>사과<br>
<input type="checkbox" name='f' value='감귤'>감귤<br>
<input type="checkbox" name='f' value='수박'>수박<br>
<input type="checkbox" name='f' value='딸기'>딸기<br>
</td>
</tr>
</table>
</form>
</body>
</html>
14
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
//option값 가져오기
function checkfrm(){
console.log(document.frm1.s.options.length); //옵션갯수
console.log(document.frm1.s.options.selectedIndex); //선텍옵션 인덱스
//console.log(document.frm1.s.options[document.frm1.s.options.selectedIndex].text); //텍스트 가져오기
//console.log(document.frm1.s.options[document.frm1.s.options.selectedIndex].value); //선택옵션 value
var form = document.frm1;
var index = form.s.options.selectedIndex;
console.log(form.s.options[index].text);
console.log(form.s.options[index].value);
}
</script>
</head>
<body>
<form name='frm1'>
<select name='s'>
<option value='1'>사과</option>
<option value='2' selected="selected">감귤</option>
<option value='3'>수박</option>
<option value='4'>딸기</option>
</select><br>
<input type="button" value="내용읽기" onclick="checkfrm()" />
</form>
</body>
</html>
15
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
function goURL(){
//검색어 인코딩
var query = encodeURIComponent(document.frm.query.value);
// openwindow로 검색엔진별 결과창 나오게
if(document.frm.urls.options.selectedIndex==0){
open('https://search.naver.com/search.naver?where=nexearch&query='+query+'&sm=top_hty&fbm=1&ie=utf8', 'win', 'width=500');
}else if(document.frm.urls.options.selectedIndex==1){
open('http://search.daum.net/search?w=tot&DA=YZR&t__nil_searchbox=btn&sug=&sugo=&q='+query, 'win', 'width=500');
}else{
open('https://www.google.co.kr/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q='+query, 'win', 'width=500');
}
}
</script>
</head>
<body>
<form name='frm'>
검색어 : <input type="text" name="query">
<select name='urls'>
<option value="">네이버</option>
<option value="">다음</option>
<option value="">구글</option>
</select>
<input type="button" value="검색 페이지 이동" onclick='goURL()' />
</form>
</body>
</html>
댓글 없음:
댓글 쓰기