English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
표현식과 문장
eval( )은 하나의 파라미터만 가집니다
파라미터가 문자열이 아니면, 그 파라미터를 직접 반환합니다;
파라미터가 문자열이면, 그 문자열을 JavaScript 코드로编译하고, compile 실패면 문법 오류를 던지고, compile 성공하면 코드를 실행하고 마지막 문장의 값을 반환하며, 값이 없으면 undefined를 반환합니다
eval()는 호출한 변수의 범위 환경을 사용합니다
그가 받는 문자열 파라미터는 단독으로 코드로 사용될 때는 의미가 있어야 하며, 그렇지 않으면 컴파일 실패가 발생합니다
delete 연산자: 객체의 자유 속성, 배열의 요소를 제거하는 데 사용됩니다
속성을 제거한 후, 속성은 존재하지 않으며, 배열 요소를 제거한 후에는 배열 내에 undefined 값을 가진空洞이 남고 배열 길이는 변경되지 않습니다;
제거할 수 없는 속성을 시도할 때 false를 반환하며, 제거 성공이나 제거 작업이 미흡할 때는 모두 true를 반환합니다
delete는 제거할 수 없습니다:
1、내장 핵심, 클라이언트 속성도 제거할 수 없습니다;
2、var 문을 통해 선언된 사용자 변수도 제거할 수 없습니다;
3、function 문을 통해 정의된 함수와 함수 매개변수도 제거할 수 없습니다
4、불가配置의 속성은 제거할 수 없습니다
void 연산자: void의 연산자는 정상적으로 실행되지만 연산자의 값을 무시하고 undefined를 반환합니다
void의 기능은 다음과 같습니다:
* void 0을 사용하여 undefined를 얻는 것이 명시적 undefined를 사용하는 것보다 신뢰할 수 있고 안전합니다;
* <a>의 href을 채우면 클릭 시 페이지 점프가 발생하지 않도록 합니다; <image>의 src을 채우면 서버로 무용한 요청이 발생하지 않도록 합니다. href='javascript:void(0);'
break 문이 레이블을 가지든가 아니든, 그 통제권은 함수의 경계를 넘을 수 없습니다! 즉, 함수 내부에서 함수 외부로 점프할 수 없습니다
Object.create( p , [x] )
이 메서드는 객체 p를 원형으로하는 새 객체를 생성하고 반환합니다. 선택적 x는 객체 속성에 대한 추가 설명을 위해 사용할 수 있습니다;
var p1 = Object.create(p); //새 객체 p를 만듭니다1그리고, 그것은 객체 p(이 p를 원형으로)에서 상속됩니다
즉 p1의 prototype(원형) 속성의 값은 p
P.x와 P['x']의 차이:
P.x를 통해 접근할 때, 고정된 이름이 x인 속성만 접근할 수 있습니다;
그리고 P['x']는 더 유연하며, [ ] 내 문자열 값을 동적으로 변경하여 다른 속성에 접근할 수 있습니다. 예를 들어, P['x'+i]
논리적 '&&', 논리적 '||'의妙用: 단축 행위
&&를 통해 book와 book.subtitle가 모두 참 값이 되도록 보장하여, 객체로서 length 속성을 읽기 전에
var len = book && book.subtitle && book.subtitle.length;
x의 값을 보장합니다: a~f 중 첫 번째가 참 값인 값에서 시작하여 나머지 참 값을 무시합니다
var x = a || b || c || d || e || f;
if( ! buy){...} buy가 거짓 값이면 {...}를 실행합니다
!!x를 통해 동등한 부울 값을 얻습니다
이제 저는 여러분께 제공한 JavaScript 학습 노트 정리_표현식과 문장에 대한 모든 내용을 마무리합니다. 여러분의 도움과 지지를 부탁드립니다. 나락 튜토리얼을 많이 지지해 주세요~