원본 질문 : JavaScript 변환에 문제가 있습니다. 다음은 예이다 :편집 : typeof (0)이 숫자 대신 부울 값을 반환하는 이유
var obj = {
x: 0,
y: 1,
z: 2
}
var b1 = typeof (obj.x),
b2 = typeof (obj.y),
b3 = typeof (obj.z);
B1은 "boolean"
이고, B2가 "boolean"
이고, B3이 "number"
이다. 변수를 0으로 설정해야하며 숫자로 해석하려면 JavaScript가 필요합니다. 나는 b1 = Number ("0")과 같은 전환을 시도했지만 도움이되지 않습니다. (
EDIT : 위의 q에 대해 사과드립니다. 사실, b1, b2 및 b3이 모두 반환 번호입니다. 내 실제 문제.
var SomeClass = function() {}
SomeClass.prototype = {
element: {},
startAt: 0,
length: 2,
get: function (prop) {
if (typeof (prop) === "undefined" || !(typeof (prop) === "string")) {
return false;
}
if (!this[prop]) {
return false;
}
return this[prop];
}
}
var sc = new SomeClass();
alert(typeof (sc.get("startAt")) + "\n" + typeof (sc.get("length")) + "\n" + typeof (sc.get("element")));
이 나는 숫자로 startAt를 설정하고 싶습니다. 정말 미안 해요!
방금 시도했는데 ... "부울"이라고 전혀 말하지 않습니다. –
신고 내용에 Chrome에 동의하지 않습니다. 어떤 브라우저/환경을 사용하고 있습니까? –
* "b1은"부울 ", b2는"부울 ", b3은"숫자 ""* [차이가 생기기] (http://jsbin.com/eraqef/1). 사양에 따르면, 세 개 모두는 ""숫자 여야하고, 나는 실행중인 테스트에 있습니다. 나는 크롬, IE (이전 및 신규), 파이어 폭스, 오페라를 시도했다 ... –