임의의 까다로운 자바스크립트 스태프
4201 단어 javascript
다음은 정의되지 않은 몇 가지 방법입니다.
a) 이름;
console.log(이름);//정의되지 않음
b) 함수가 반환되지 않는 경우
function add(num1,num2){
console.log(num1+num2);
}
const res = add(5,6);
console.log(res);//11 undefined
const res2 = add(5);
console.log(res2);//undefined
c) 누락된 객체의 속성 호출
const movie = {name:'Social Network', director:'david Fincher',year:'2011'};
console.log(movie.cast);//undefined
d) 정의되지 않은 변수를 설정한 경우
let a = undefined;
console.log(a);
Null은 비어 있음을 의미합니다. 변수 null을 설정할 수 있습니다.
2.이중 등호(==) 대 삼중 등호(===)
이중 등호는 삼중 등호 검사 여부를 변수 유형을 확인하지 않습니다.
const num1 = 5; //integer
const num2 = "5"; // String
if(num1==num2){
console.log("This is true");
}else{
console.log("This is false");
}
//Output: This is true.
if(num1===num2){
console.log("This is true");
}else{
console.log("This is false");
}
//Output: This is false.
3. 폐쇄 대 블록 범위
범위: 함수 내부에서 액세스합니다. 예를 들어,
function add(num1,num2){
const res = num1+num2;
return res;
}
console.log(res);//error, because res is a variable inside the function, we can't access it from outside.
전역 범위: 변수가 전역으로 선언되면 함수 외부에서 액세스할 수 있습니다.
let total = 100;
function sub(num3){
return total+num3;
}
console.log(total);//here we can access the total variable from outside of the function.
블록 범위: 두 번째 괄호 안에 변수를 선언할 때. 지역 외부에서는 액세스할 수 없습니다.
{} =차단된 범위.
if(number >10){
let response = 'Happy';
console.log(response);
}
console.log(response); // error
참고: 그러나 var를 사용하여 변수를 선언하는 경우. 오류가 표시되지 않습니다.
if(number >10){
var response = 'Happy';
console.log(response);
}
console.log(response); //no error
중요: 범위'{}' 내부에서 'var'를 사용하여 변수를 선언할 때 자바스크립트에서 호이스팅이라고 하며, 범위 외부에서 변수를 가져와 전역 변수로 표시합니다.
클로저: 함수가 다른 함수를 반환할 때. 클로저를 사용하면 내부 함수에서 외부 함수의 범위에 액세스할 수 있습니다. JavaScript에서는 함수가 생성될 때마다 함수가 생성될 때마다 클로저가 생성됩니다.
function increase(){
let count = 0;
return function(){
count++;
return count;
}
}
const res1 = increase();
console.log(res1);//1
console.log(res1);//2
console.log(res1);//3
const res2 = increase();
console.log(res2);//1
console.log(res2);//2
console.log(res1);//4
4. 배열에서 중복 제거
const name = [2,2,3,3,4,5,6];
const uniqueName = [];
for(let i =0;i<name.length;i++){
let element = name[i];
let index = uniqueName.indexOf(element);
if(index==-1){
uniqueName.push(element);
}
}
console.log(uniqueName);//[2,3,4,5,6]
5. 문자열 반전
function reverseString(str){
const reverse ='';
for (let i=0;i<str.length;i++){
let char = str[i];
reverse = char+reverse;
}
return reverse;
}
const sentence = 'Hello programming community';
const result = reverseString(sentence);
console.log(result);
6.비동기
자바스크립트는 동기적으로 작동합니다. 즉, 자바 스크립트 코드는 한 줄씩 작업을 끝냅니다. 예시...
function movie(){
console.log('Ironman1');
}
console.log('Ironman2');
console.log('Ironman3');
//Output:
Ironman1
Ironman2
Ironman3
그러나 우리는 자바스크립트를 비동기식으로 만들 수 있습니다. setTimeout() 메서드를 사용하여 함수나 작업을 보류할 수 있습니다.
function movie(){
console.log('Ironman1');
}
setTimeout(movie);
console.log('Ironman2');
console.log('Ironman3');
//Output:
Ironman2
Ironman3
Ironman1
참고: 기능이 보류되는 특정 시간을 설정할 수도 있습니다.
예시,
setTimeout(movie,10000);//here time is in mili second.
7. 이벤트 루프와 이벤트 부블
8. let const 및 var
9.재귀 함수
10.콜백 기능
11.CRUD 동작
Reference
이 문제에 관하여(임의의 까다로운 자바스크립트 스태프), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/habiburrahman/things-about-javascript-you-ll-have-fun-learning-3nl9텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)