Programming Language/JS & JQuery 6

Javascript의 json 객체에서 -(dash)가 포함된 name에 접근하는 방법?

json은 다양한 방식으로 표현될 수 있는데 상기와 같이 -(dash)기반으로 name을 정의할 수도 있고 혹은 java개발자에게 편한 camelCase로도 표현가능하다. -(dash)기반으로 표현할 경우 javascript에서 아래와 같이 error가 발생하면서 정상적으로 접근하지 못할 때가 있다. jsonObj.popup.menu-item //ReferenceError: "item" is not defined 상기와 같은 json표현식에서는 아래와 같이 name에 접근하면 된다. jsonObj.popup["menu-item"] //Good 대괄호안에 접근하고자 하는 name을 적으면 됨.

[JavaScript]변수내용이 json인지 확인하는 method(check valid json)

js에서 사용하고 있는 variable이 json인지 여부를 확인하고 싶을때가 있다. npm을 사용한 여러 library를 사용하는 방법도 있지만 아래와 같이 간단한 method를 활용하는 방법도 있다. function IsJsonString(str) { try { var json = JSON.parse(str); return (typeof json === 'object'); } catch (e) { return false; } } JSON.parse(str) 메서드 ECMAScript 2015의 standard method이다. JSON.parse(str)는 json의 문자열 구문을 분석하고 들어온 파라미터를 js값이나 객체로 생성한다. 이때 정상적인 json type이 아닌경우 exception을 반..

jqeury 스크롤 내리다가 특정 영역(부분) 이벤트 발생시키기

웹을 개발하다가 보면 스크롤을 내리다가 특정부분이 되면 혹은 특정 div가 나오게 되면 이벤트를 발생시키고 싶어 할 때도 있다. 아닐때도 있고, 갑자기 하고싶을 때도 있다. 이때 아래와 같이 사용하게 되면 이벤트를 딱 한번만 발생을 시킬 수 있다. HTML scroll down to see the div CSS body, html { height: 100%; } #wrapper { height: 400%; background: none repeat scroll 0 0 #f99ccc ; text-align:center; padding-top:20px; font-size:22px; } #tester { padding-top:1200px; height: 600px; background: none repeat ..

Javascript 예외처리

JAVA와 거의 유사하게 Javascript에서도 예외처리가 가능하다. 그런데 예외처리가 잘쓰이는지 잘 모르겠다. AJAX를 사용하면 AJAX에 있는 done, success와 같은 문구로 사용을 더 많이할 것같다. 1234567891011121314151617181920 function registerEventListener(node, event, listener){ try{ //firefox, chrome etc.. node.addEventListener(event, listener, false); } catch(exception){ //internet explorer node.attachEvent('on'+event, listener); } } window.onload = function(){ va..

Javascript 객체 개요

자바스크립트는 자바처럼 객체 선언이 가능하다.아래와 같은 방식의 객체생성이 여러 생성방법 중 한가지이다. 1234567 var product = { name : 'mango', type : 'sweet', from : 'India' };cs 자바스크립트 배열과 상당히 유사한데 객체의 atttribute에 접근하는것도 비슷하게 접근가능하다. 혹은 java처럼 접근도 가능하다 1234567var name = product['name'];var type = product['type'];var name = product['from'];//orvar name = product.name;var type = product.type;var from = product.from;cs attrubute와 method가 포함..