javascript : 여러 특정 개체 속성의 존재 여부 확인 (coffeescript에서도)

도미닉

개체에 몇 가지 특정 속성이 있는지 확인해야합니다. 이를 위해 두 가지 질문이 있습니다.

  1. 일반적으로 JavaScript에서 여러 기존 속성을 확인하려면 어떻게해야합니까?
  2. CoffeeScript에이 작업을 우아한 방식으로 수행 할 수있는 바로 가기가 있습니까?

내 자바 스크립트 솔루션은 다음과 같습니다.

if(obj && obj.pOne && obj.pTwo && obj.pThree) doStuff();

더 짧지 않을 커피 스크립트에서 :

if obj and obj.pOne and obj.pTwo and obj.pThree then doStuff()

여기에서 오해하지 마십시오. 작동하지 않습니다.

그런 다음 in if 절 에 대한 연산자를 만났습니다 (이러한 검사에 사용한 적이 없음). 이것이 내가 이루고 싶은 것을하는 올바른 방법입니까? 아니면 그게 일종의 금지입니까, 아니면 더 나은 / 깨끗한 해결책이 있습니까?

내 코드는 다음과 같습니다.

if(obj && ('pOne' && 'pTwo' && 'pThree' in obj)) doStuff();

다음과 같은 coffeescript :

if obj and ('pOne' and 'pTwo' and 'pThree' of obj) then doStuff()

고양이

첫 번째 줄은 원하는 것입니다. 이대로 잘못된 것은 없습니다. 함수를 호출하기 전에 4 가지 사항을 확인해야한다고 생각한다면 함수를 다르게 작성하는 것이 좋습니다.

if(obj && obj.pOne && obj.pTwo && obj.pThree) doStuff();

참조 : 방어 프로그래밍이 쓰레기 인 이유

추신 . 마지막 예는 좋지 않으며 생각하는 방식을 평가하지 않습니다.


사용하기 더 좋게 만들기 위해 함수를 다시 작성하는 것을 고려하십시오.

var doStuff = function(obj) {
  obj        = obj        || {};
  obj.pOne   = obj.pOne   || "pOneDefault";
  obj.pTwo   = obj.pTwo   || "pTwoDefault";
  obj.pThree = obj.pThree || "pThreeDefault";

  console.log(obj);
};

doStuff();
// {pOne: "pOneDefault", pTwo: "pTwoDefault", pThree: "pThreeDefault"}

doStuff({pOne: "foo"});
// {pOne: "foo", pTwo: "pTwoDefault", pThree: "pThreeDefault"}

doStuff({pTwo: "bar"});
// {pTwo: "bar", pOne: "pOneDefault", pThree: "pThreeDefault"}

doStuff({pTwo: "hello", pThree: "world"});
// {pTwo: "hello", pThree: "world", pOne: "pOneDefault"}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

별도의 클래스에있는 객체의 속성을 사용하여 존재 여부 확인

분류에서Dev

XSLT 2.0, 특정 위치에 특정 노드 존재 여부 확인

분류에서Dev

CoffeeScript에서 속성의 존재 여부 테스트

분류에서Dev

Javascript 파일 존재 여부 확인

분류에서Dev

속성을 통해 has_many의 존재 여부 확인

분류에서Dev

MongoDB Aggregation : 여러 속성을 포함하는 객체가 배열에 존재하는지 확인하는 방법

분류에서Dev

계정 존재 여부 확인

분류에서Dev

R의 함수 내부에 개체 존재 확인

분류에서Dev

존재 확인-xslt 1.0의 여러 키

분류에서Dev

특정 상수 값을 기준으로 여러 속성에 대한 객체의 JavaScript 정렬 배열

분류에서Dev

여러 스레드에 걸쳐 개체의 속성 설정

분류에서Dev

매개 변수 목록에서 데이터 존재 여부 확인

분류에서Dev

JS를 사용하여 여러 개체의 특정 속성에 액세스하는 방법

분류에서Dev

여러 배열에서 특정 개체 속성 값 가져 오기

분류에서Dev

Codeigniter-라우트 파일에서 컨트롤러 기능의 존재 여부 확인

분류에서Dev

PHP-needle의 모든 속성을 비교하여 객체 배열에서 객체가 존재하는지 확인

분류에서Dev

! obj [key]는 JavaScript에서 객체 속성의 존재를 확인하는 좋은 방법입니까?

분류에서Dev

'has_one'관계에서 하위 모델의 존재 여부 확인

분류에서Dev

정의되지 않은 변수-var 존재 여부 확인 방법

분류에서Dev

다른 기존 개체에서 선택한 특성 만 사용하여 새 javascript 개체 만들기

분류에서Dev

Elasticsearch : 여러 원의 반경 내에 GeoPoint가 존재하는지 확인

분류에서Dev

배열의 모든 개체에 대한 속성이 존재하도록 JavaScript 개체 리터럴을 정의 하시겠습니까?

분류에서Dev

JavaScript를 사용하여 문자열에 개체의 특정 키워드가 포함되어 있는지 확인하는 방법

분류에서Dev

SQL : group by를 사용하여 별도의 문자열 목록에 대해 값의 존재 여부 확인

분류에서Dev

여러 속성에서 NSArray 사용자 지정 개체 정렬

분류에서Dev

인덱스로 요소의 존재 여부 확인

분류에서Dev

특정 속성 이름을 참조하여 Javascript JSON 개체에서 값 가져 오기

분류에서Dev

반복자를 사용하여 arraylist의 일부인 개체에서 특정 제목을 찾는 방법

분류에서Dev

한 개체의 여러 속성을 열에 바인딩하는 DataGrid

Related 관련 기사

  1. 1

    별도의 클래스에있는 객체의 속성을 사용하여 존재 여부 확인

  2. 2

    XSLT 2.0, 특정 위치에 특정 노드 존재 여부 확인

  3. 3

    CoffeeScript에서 속성의 존재 여부 테스트

  4. 4

    Javascript 파일 존재 여부 확인

  5. 5

    속성을 통해 has_many의 존재 여부 확인

  6. 6

    MongoDB Aggregation : 여러 속성을 포함하는 객체가 배열에 존재하는지 확인하는 방법

  7. 7

    계정 존재 여부 확인

  8. 8

    R의 함수 내부에 개체 존재 확인

  9. 9

    존재 확인-xslt 1.0의 여러 키

  10. 10

    특정 상수 값을 기준으로 여러 속성에 대한 객체의 JavaScript 정렬 배열

  11. 11

    여러 스레드에 걸쳐 개체의 속성 설정

  12. 12

    매개 변수 목록에서 데이터 존재 여부 확인

  13. 13

    JS를 사용하여 여러 개체의 특정 속성에 액세스하는 방법

  14. 14

    여러 배열에서 특정 개체 속성 값 가져 오기

  15. 15

    Codeigniter-라우트 파일에서 컨트롤러 기능의 존재 여부 확인

  16. 16

    PHP-needle의 모든 속성을 비교하여 객체 배열에서 객체가 존재하는지 확인

  17. 17

    ! obj [key]는 JavaScript에서 객체 속성의 존재를 확인하는 좋은 방법입니까?

  18. 18

    'has_one'관계에서 하위 모델의 존재 여부 확인

  19. 19

    정의되지 않은 변수-var 존재 여부 확인 방법

  20. 20

    다른 기존 개체에서 선택한 특성 만 사용하여 새 javascript 개체 만들기

  21. 21

    Elasticsearch : 여러 원의 반경 내에 GeoPoint가 존재하는지 확인

  22. 22

    배열의 모든 개체에 대한 속성이 존재하도록 JavaScript 개체 리터럴을 정의 하시겠습니까?

  23. 23

    JavaScript를 사용하여 문자열에 개체의 특정 키워드가 포함되어 있는지 확인하는 방법

  24. 24

    SQL : group by를 사용하여 별도의 문자열 목록에 대해 값의 존재 여부 확인

  25. 25

    여러 속성에서 NSArray 사용자 지정 개체 정렬

  26. 26

    인덱스로 요소의 존재 여부 확인

  27. 27

    특정 속성 이름을 참조하여 Javascript JSON 개체에서 값 가져 오기

  28. 28

    반복자를 사용하여 arraylist의 일부인 개체에서 특정 제목을 찾는 방법

  29. 29

    한 개체의 여러 속성을 열에 바인딩하는 DataGrid

뜨겁다태그

보관