javascript - [,null]의 사용법은 무엇입니까
过去多啦不再A梦
过去多啦不再A梦 2017-06-26 10:58:11
0
4
1032

URL 값을 가져오는 데 다음 함수가 사용되는 것을 확인하세요.

으아아아

근데 여기서는 [,null]이라는 표현이 뭔지 모르겠어요.

过去多啦不再A梦
过去多啦不再A梦

모든 응답(4)
刘奇

이 함수의 목적은 URL http://www.xxx.com/index.html?key=hello&value=world*,此时的location.search等于?key=hello&value=world。比如要获取key的值("hello"),调用getURLParameter("key")과 같은 URI의 특정 매개변수 값을 가져오는 것입니다.

exec의 구문은 다음과 같습니다:

일치하는 경우 반환 결과는 배열입니다. 배열의 첫 번째 요소는 일치하는 하위 문자열이고 후속 요소는 캡처링 괄호의 내용입니다. 정규식에서 볼 수 있듯이 우리에게 필요한 결과는 다음과 같습니다. 번째 캡처 괄호 의 내용은 배열의 두 번째 요소 이므로 [1];

가 사용됩니다.

예를 들어 URL이 여전히 위의 URL이라고 가정하면 getURLParameter("key")를 호출하고 일치하는 결과는 ["key=hello&", "hello", "& "] , "key=hello&"는 일치하는 하위 문자열이고, "hello"는 첫 번째 캡처 괄호의 내용이고, "&"는 두 번째 캡처링 괄호의 내용입니다. ["key=hello&", "hello", "&"] || [,null] 결과는 물론 이전 항목인 ["key=hello&", " hello ", "&"]를 입력하고 getURLParameter("key"),匹配的结果是["key=hello&", "hello", "&"]"key=hello&"是匹配的子串,"hello"是第一个捕获型括号的内容,"&"是第二个捕获型括号的内容。["key=hello&", "hello", "&"] || [,null]的结果当然是前一项,也就是["key=hello&", "hello", "&"], 然后取[1],整个函数的返回值就是"hello"를 취하면 전체 함수의 반환 값은 "hello"입니다.

그러나 getURLParameter("time")을 호출하면 매칭이 실패하므로 결과는 null이 됩니다. 이때 getURLParameter("time"),匹配失败,所以结果是null,此时如果你调用[1]就会报错。[,null]表示[undefined, null],当匹配失败的时候,就变成了null || [undefined, null]这个结果是[undefined, null],此时再[1]就不会报错了,此时整个函数返回的是null를 호출하면 오류가 보고됩니다. [,null][정의되지 않음, null]을 의미합니다. 일치에 실패하면 null || [정의되지 않음, null] 이 때 오류는 보고되지 않으며 전체 함수는 null을 반환합니다.

getURLParameter 함수를 호출한 후 반환 값이 null인지 판단할 수 있습니다. null이면 해당 매개 변수가 URL에 없다는 뜻이고, null이 아니면 반환 값은 필수 매개 변수 값입니다.

代言

게으른 접근 방식,
(name + '=' + '(.+?)(&|$)').exec(location.search)일치에 성공한 경우. 결과는 null이 아닙니다. (.+?)는 일반 일치 값 [1]입니다. 일치가 실패하면 exec는 null을 반환합니다. (name + '=' + '(.+?)(&|$)').exec(location.search)如果匹配成功。结果不会null。(.+?)就是正则匹配的值[1]。而如果匹配失败,exec返回null。
[,null]第一个值为undefined,这个操作只是统一了返回值为null,关键还是最后面的[1]导致的
如果后面的是[0],那[,null]可以改写为[null][,null]첫 번째 값은 정의되지 않음입니다. 이 작업은 반환 값만 null로 통합합니다. 키는 마지막 [1]입니다. 원인

뒤에 나오는 내용이 [0]이면 [,null][null]로 다시 쓸 수 있습니다🎜
阿神

[,null][1] null이 아닌가요? 이전 항목이 일치하지 않으면 null이 반환됩니다

扔个三星炸死你

이것과 같습니다

으아악

그러나 이전 섹션(RegExp(name + '=' + '(.+?)(&|$)').exec(location.search))에서 매개변수 값을 얻지 못한 경우 오류가 보고됩니다. [1]을 직접 가져옵니다. 따라서 끝에 [,null]을 추가하는 것은 [undefine, null]과 동일하며, 끝에 [1]을 사용하면 URL 매개변수 때문에 배열 범위를 벗어난 오류가 발생하지 않도록 할 수 있습니다. 얻을 수 없습니다

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!