일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 블록체인
- 엔터프라이즈 블록체인
- Golang
- 파이썬
- 파이썬 동시성
- 파이썬 강좌
- Actor
- 파이썬 머신러닝
- 스칼라 강좌
- 이더리움
- 파이썬 데이터분석
- 안드로이드 웹뷰
- 스칼라 동시성
- CORDA
- akka 강좌
- Hyperledger fabric gossip protocol
- Play2 로 웹 개발
- 그라파나
- 플레이프레임워크
- play 강좌
- 주키퍼
- hyperledger fabric
- 하이퍼레저 패브릭
- Play2
- play2 강좌
- Adapter 패턴
- 스위프트
- Akka
- 스칼라
- 하이브리드앱
- Today
- Total
HAMA 블로그
심심풀이 자바스크립트 퀴즈 본문
안녕하세요 (_._)
"프로 자바스크립트 테크닉" 과 "인사이드 자바스크립트"라는 책을 참조하여 문제를 만들었습니다.
언어를 공부하는 방법으로는 직접만들거나, 다른언어와의 비교를 통해서 습득하는 방법 말고도
문제를 풀면서 언어를 공부하는것도 지겨운 공부를 재밌게하는 방법중 하나라고 생각합니다 :-D
* 함수라 쓰고 객체라 읽는다.
* 함수안에 함수가 있는것이 모든 혼란의 근원이지만, 정수가 된다."
자 렛츠고~!!
1 번 . 다음 구문은 올바른 것인가? (DOM)
html ====================================
<input id="input1" type="text" value="값" />
javascript ================================
var inputTxt = document.getElementById('input1');
inputTxt.text("hi");
2 번. 다음 구문은 올바른 것인가? (DOM & Jquery)
html ====================================
<input id="input1" type="text" value="hello" />
javascript ================================
var t = $("#input1");
alert(t.text());
alert(t.html());
alert(t.val());
t.text("bye");
3번. 다음을 실행하면 결과는 ? (객체 생성 방법)
var People1 = { age : 44, name : 'brad' };
function People2(name, age){
this.age = age;
this.name = name;
};
var People3 = function (name, age){
this.age = age;
this.name = name;
};
var brad = new People3('brad', 30);
console.log(brad.age); // ??
4번. 다음을 실행하면 결과는 ? (일급함수)
var foo = function(){
return function(){
console.info("hi");
};
};
var bar = foo();
bar(); // ??
5번. 다음을 실행하면 결과는 ? (즉시실행함수)
(function(name){
console.info("hello -> " + name);
})("brad");
6번. 다음을 실행하면 결과는 ? (애매한 자바스크립트의 this)
var name = "outside name";
var myObject = {
name: "foo",
sayName : function(){
console.info(this.name);
}
};
var otherObject = { name : "bar" };
otherObject.sayName = myObject.sayName;
myObject.sayName(); // ??
otherObject.sayName(); // ??
7번. 다음을 실행하면 결과는 ? (애매한 자바스크립트의 this)
var name = "outside name";
var myObject = {
name: "foo",
sayName : function(){
var name = "inside name";
console.info(this.name);
}
};
var otherObject = { name : "bar" };
otherObject.sayName = myObject.sayName;
myObject.sayName();
otherObject.sayName();
8번. 다음을 실행하면 결과는 ? (애매한 자바스크립트의 this)
var value = 100;
var myObject={
value : 1,
func1 : function(){
this.value +=1;
console.log(" func1 this.value : "+ this.value);
func2 = function(){
this.value += 1;
console.log(" func2 this.value : " + this.value);
}
func2();
}
};
myObject.func1(); // ??
9번. 다음을 실행하면 결과는 ? (애매한 자바스크립트의 this)
name = "john"; var myObject = { name : "foo", func1 : function(){ sayName = function() { console.log("My name is " + this.name); }; sayName();
} }; myObject.func1(); // ??
10번. 다음을 실행하면 결과는 ? (클로저)
function outerFunc(){
var x = 10;
var innerFunc=function(){ console.log(x)};
return innerFunc;
}
var inner = outerFunc();
inner(); // ?
11번. 다음을 실행하면 결과는 ? (모듈패턴)
var module = (function () {
var privateKey = 0;
function privateMethod() {
return ++privateKey;
}
return {
publickey : privateKey,
publicMethod : function () {
return privateMethod();
}
}
})();
console.log(module.publicMethod()); // ?
console.log(module.publicMethod()); // ?
console.log(module.publickey); // ?
12번. 다음을 실행하면 결과는 참인가 거짓인가 ? (객체 참조)
var items = new Array('one','two');
var itemsRef = items;
items.push('three');
alert (items.length == itemsRef.length); // ??
13번. 다음을 실행하면 결과는 참인가 거짓인가 ? (객체 참조)
var items = new Array('one','two');
var itemsRef = items;
items = new Array("new");
alert (items == itemsRef); // ??
14번. 다음을 실행하면 결과는 참인가 거짓인가 ? (문자열 과 참조)
var item = "test";
var itemRef = item;
item += "ing";
alert(item == itemRef); // ??
15번. 다음을 실행하면 결과는 참인가 거짓인가 ? (스코프)
var foo = "test"
if(true){
var foo = "new test";
}
alert (foo == "new test"); // ??
function test(){
var foo = "old test";
}
test();
alert( foo == "new test"); // ??
16번. 다음을 실행하면 결과는 참인가 거짓인가 ? (커링)
function addGenerator( num ) {
return function ( toAdd) {
return num + toAdd
};
}
var addFive = addGenerator ( 5 );
alert (addFive ( 4 ) == 9 );
17번. 다음을 실행하면 thanks for your 다음에 어떤 단어가 출력되겠는가? (클로저, 유효범위 )
var obj = document.getElementById("input1"); var items = ["click", "keypress"]; for(var i = 0; i < items.length; i++){ (function(){ obj[ "on" + items[i] ] = function(){
console.info("thanks for your " + items[i]); // ?? }; })(); }
18번. 다음을 실행하면 결과는 참인가 거짓인가 ? (컨텍스트)
var obj = {
yes : function(){
this.val = true;
},
no: function(){
this.val = false;
}
};
alert(obj.val != null); // ??
obj.yes();
alert(obj.val == true); // ??
window.no = obj.no;
window.no();
alert(obj.val == false); // ??
19번. 다음을 실행하면 결과는 참인가 거짓인가 ? (객체, Privileged 메소드)
function User ( name, age ) {
var year = (new Date()).getFullYear() - age;
this.getYearBorn = function(){
return year;
}
}
var user = new User('bob', 42);
alert(user.year == 42); // ??
20번. 다음을 실행하면 결과는 참인가 거짓인가 ? (프로토타입)
function Person(name) {
this.name = name || "brad";
}
Person.prototype.getName = function(){
return this.name;
};
function Korean(name){}
Korean.prototype = new Person();
var kor1 = new Korean();
console.log(kor1.getName() == "brad");
var kor2 = new Korean("john");
console.log(kor2.getName() == "john");
프로 자바스크립트 테크닉 (http://www.yes24.com/24/goods/3044388)
인사이드 자바스크립트(http://www.yes24.com/24/Goods/11781589?Acode=101)
'Javascript' 카테고리의 다른 글
[번역] 자바스크립트에서 for 루프를 다시 생각해보자 (0) | 2017.09.26 |
---|---|
TYPESCRIPT + EXPRESS + NODE.JS 구축 (0) | 2016.06.22 |
자바스크립트 - 컨텍스트 (0) | 2015.11.18 |
자바스크립트 - 모듈 패턴 (0) | 2015.11.17 |
잊을만할때 다시 훑어보는 Javascript (0) | 2015.05.26 |