이 비디오에서 우리는 이것을하기 위해 약간의 개선을 할 것입니다.
그래서 여기에 우리가 시도하려고하는 새로운 버전이 있습니다.이 명령은 delete라는 새로운 명령을 가지고 있으며, list 명령은 그것을 사용하는 방식으로 바뀌 었습니다.
그래서 나는 이것이 어떻게 생겼는지 보여 줄 것입니다.
페이지를 새로 고치고 새 기능을 추가하여 시작할 것입니다.
볼드 모트를 죽여라.
이번에는 목록에 추가 된 볼드 모트 (Voldemort)를 죽이라고 알려줍니다. 목록을 보면 모든 항목이 자체 회선에있는 멋진 작은 인쇄물을 얻을 수 있습니다.
이전에 사용했던 방법은 전체 배열을 한 줄에 인쇄하는 것입니다.
이제는 별도의 줄에 넣은 다음 delete를 입력하여 삭제할 수 있으며 색인을 요청합니다.
자, Voldemort를 삭제하고 싶다고합시다.
나는 그 일을 성취한다.
나는 번호 하나를 타이핑하고 나에게해야한다는 지시가 제거된다.
목록을 입력하면 목록에 항목이 하나만 있다는 것을 확인할 수 있습니다.
이것이 우리가 여기서 지향하는 목표입니다.
먼저 이전 버전의 앱에 이러한 기능 중 일부를 추가하여 시작하겠습니다.
내가하고 싶은 일은 우리 LIST 명령이 현재 어떻게 작동 하는지를 보여 주기만하면됩니다.
그래서 저는 새로운 것을 추가 할 것입니다.
그냥 임의의 문자.
그리고 이제 목록을 입력하면 배열이 한 줄에 모두 인쇄됩니다.
그래서 제가 대신하고 싶은 것은 별개의 줄에 인쇄되어 있습니다. 여기에 멋진 별표 칸막이가 있고 여기에 새 거북이 한 콜론으로 제로 콜론이 있고 그 사이에 우리가해야 할 일이 있습니다. 우리는 할일을 모두 기록 할 수 없습니다.
해야 할 일을 반복하고 각각을 개별적으로 인쇄해야합니다.
그래서 우리에게는 몇 가지 선택이 있습니다.
for 루프 또는 For Each 루프를 사용할 수 있습니다.
나는 그것이 내가 좋아하는 것이기 때문에 각각을 위해 사용할 것이다.
그러나 그것은 단지 선호의 문제입니다.
그래서 각각을 위해 물건을하기 위해 우리는이 함수에 그것을 주면 우리는 거기에 넣을 것입니다.
자리 표시자를 구성하는 이름과 우리가 수행 할 모든 작업은 해당 로그를 취소 한 다음이를 제거하고 저장한다는 것을 기억하십시오.
그래서 우리는 할 일을하기 위해 반복 할 것입니다.
각 개인이 할 수있는 자리 표시 자입니다.
그리고 우리는 페이지를 새로 고치기 위해 각각을 인쇄합니다.
새로운 것을 추가합시다.
다시 임의의 문자.
이제 그것이 목록입니다.
그리고 지금 우리는 두 줄을 가지고 있습니다.
다음 단계는 For Each 루프를 사용하여 이러한 숫자를 추가하는 것입니다.
우리는 각 항목이 해당하는 색인이나 번호에 즉시 액세스 할 수 없습니다.
우리는 Doo가 할 일에 대해 새로운 거북이가 할 일에 대해 할 일을 해줄 수있는 약간의 해킹을 할 수 있습니다.
그리고 나서 그것은 우리에게 많은 것을 돌려 줄 것입니다.
따라서 이상적인 솔루션이 아닙니다.
우리가 할 수있는 것은 각 함수에 대한 두 번째 인수를 추가하는 것입니다. 인덱스라고 부를 수있는 것은 물론 무엇이든 호출 할 수 있습니다.
그리고 그것은 색인을 참조 할 것입니다.
첫 번째 항목은 할 항목이 될 것입니다. 그러면이 항목이 수행 할 특정 항목의 인덱스가됩니다.
그래서 매번 우리는 그 둘을 얻습니다.
그래서이 첫 번째 항목에 대한 새로운 거북이 색인에 의해 될이 항목에 대한 제로 될 것 입니다이 문자의 전체 문자열이 될 것입니다 또는 색인은 하나가 될 것입니다.
그래서 우리가하고 싶은 것은 그것을 인쇄하는 것뿐입니다.
그래서 제가 따르는 형식은 그 사이의 공백과 관련된 인덱스 콜론의 수입니다.
그래서 나는 이것처럼 보인다.
그리고 콜론과 우리 공간이 필요합니다.
가서 이것을 시험해 봅시다.
그래서 나는 새로 고쳐서 이번에 Hogwarts 교과서로 새로운 것을 추가 할 것입니다.
승인.
이제는 모든 타입리스트와 나는 그것의 옆에있는 번호를 가진 각각의 라인에 각각 나의 사용을 얻는다.
굉장해.
그래서 마지막으로해야 할 일은 여기에있는 것처럼 별표를 목록에 추가하는 것입니다.
그래서 매우 간단합니다.
우리가해야 할 일은 죄책감입니다. 그러나 로그 스타 스타.
나는 내가 10 살을했다고 생각한다.
그건 중요하지 않아.
그리고 전에 복사 할 것입니다.
그리고 foreach 후에.
그리고 그것은 우리에게 우리가 원하는 것을 줄 것입니다.
그래서 나는 그것을 증명할 것이다.
우리의 버전을 새로 고침하고 입력 목록에 가서 우리는 우리의 목록을 둘러싼 작은 별표를 얻을.
따라서 다음 기능은 삭제 될 것입니다.
그래서 나는 나이가 들었을 때 어떻게 새로운 목록 항목을 여기의 지시 사항으로 추가 할 것인가에 대한 나의 목록으로 되돌아 갈 것입니다.
따라서 삭제하면 특정 작업이 제거됩니다.
따라서 그것이 작동하는 방식은 먼저 우리가 삭제하고자하는 것에 대한 인덱스를 제공하고 삭제할 필요가 있다는 것입니다.
그래서 입력이 equals = equals와 같으면 else를 추가 할 것입니다.
그런 다음 인덱스 2를 삭제하라는 요청을해야합니다. 그런 다음이를 지워야 삭제가 필요합니다.
먼저 색인을 요청하십시오.
꽤 간단합니다.
프롬프트에서 index of를 입력하면 삭제할 수 있기 때문에 index라는 변수를 만듭니다.
그래서 우리는 0과 같은 지수를 얻을 수 있습니다.
그런 다음 배열에서 해당 항목을 제거하려면 해당 색인을 사용해야합니다.
그리고 조금 더 까다 롭습니다.
실제로 어레이에서 무언가를 삭제하는 방법에 대해서는 언급하지 않았습니다.
POP와 shift를 사용하는 것 외에 배열 끝에서만 제거됩니다.
그러나 시작.
여기에서 수행하려는 작업은 어레이 내부의 모든 위치에서 잠재적으로 제거하는 것입니다.
그래서 splice라는 또 다른 방법이 있습니다.
그래서 우리가 어떻게 장소를 사용하는지 보여 드리겠습니다.
우리는이 스플 라이스를 사용하도록 글을 쓸 것입니다. 이것은 기본적으로 배열을 잘라내어 특정 개수의 요소를 제거합니다.
그래서 첫 번째 주장은 우리가 그 상처를 만들고 싶은 곳입니다.
그래서 그것은 사용자가 제공 한 인덱스 일 것입니다. 그리고 두 번째 인수는 삭제할 항목의 수입니다.
그 색인 다음.
그래서 우리는 하나의 항목 만 삭제하려고합니다.
그것이 우리가해야 할 모든 것입니다.
사용자에게 어떤 의무를 지우고 싶은지를 묻는 하나의 스플 라이스 인덱스.
전화주세요.
사용자가 3을 입력한다고 가정 해 보겠습니다.
그런 다음 스플 라이스를 시작하려면 인덱스가 3 인 항목을 찾아서 하나의 항목을 삭제하십시오.
이 항목을 추가하면 해당 색인 다음 10 개의 항목이 삭제됩니다.
그래서 우리는 오직 하나만 원합니다.
우리 브라우저에서 이것을 시험해 봅시다.
내가 새로 고쳐서 몇 가지를 추가하는 것으로 시작하겠습니다.
그래서 첫 번째 것.
접시가 지금 당장 그것을해야합니다.
다음 사람은 세탁을한다.
내가 그것을하기 전에 아마 몇 주가 더 기다릴 수 있습니다.
그리고 마지막 하나는 여기에 있습니다.
저녁을 먹다.
승인.
그래서 그들을 나열하고 우리는이 좋은 목록을 여기에 보냅시다.
그럼에도 불구하고 우리는 5 마리의 새 거북이를 가지고 있습니다. 나는 이미 새 거북이를 구입했거나, 마음이 바뀌었기 때문에 새 거북이를 지우고 싶다고 말하며 거북이가 아마도 당신이 소유 할 수있는 최악의 애완 동물이라는 것을 알았습니다.
그래서 그것을 지우고 delete라고 치자.
이제는 색인을 요청하여 색인이 0이되어 약간의 피드백이 있다면 좋을 것입니다.
항목을 삭제 했으므로 다음에 추가 할 수 있습니다.
그러나 그것이 효과가 있었는지 확인했습니다.
목록을 입력하면 배열이 변경된 것을 볼 수 있습니다.
이제 우리는 더 이상 새로운 거북이를 사지 않아도됩니다. 그리고 우리는 단지 음식을 세탁하고 저녁 식사를합니다. 그러니 그만두고 약간의 피드백을 추가합시다.
삭제할 항목을 삭제할 때 시작합니다. 삭제 된 로그를 취소하고 저장하고 추가 할 때 동일한 작업을 수행하도록하려면 해당 로그를 취소해야합니다. 그러면 수행 할 추가 콘서트 로그를 만들 것입니다. 무슨 일이야.
그리고 내가 여기있는 동안이 루프가 약간 길어지고 있다는 것을 알아 차릴 수 있습니다. 그래서 우리가 아마하고 싶은 것은 이것을 분리 된 함수로 분해하는 것입니다.
그래서 우리는 이것을 기능적으로 리펙토링 할 것입니다. 어떻게 작동하는지에 대해서는 아무 것도 변하지 않을 것입니다.
코드가 어떻게 구성되어 있는지에 관한 문제입니다.
그래서 내가 어떻게 작동하길 원하니.
여기에는 별도의 기능이 있습니다.
그 모든 것을 복사하고 잘라내서 우리의 함수를 List라고 부를 것입니다. 이렇게하려면 입력이리스트와 같으면 우리는 내려갑니다. 여기에 정의 할 일 목록을 정의하십시오.
그리고 우리는 그 코드를 붙여 넣기 만하면됩니다.
이것처럼.
나는 똑같은 것을 반복 할 것입니다.
따라서 사용자가이 코드를 복사 할 위치를 알고 있으면 코드를 잘라내서 코드를 작성하는 함수를 호출 할 것입니다.
Add to do 다음에 필자는 필자의 함수를 쓰려면이 코드를 들여 쓰다가 붙여 넣기를해야만하고 또 하나를 저장해야했다.
사용자가 delete를 입력하면 Delete라는 새 함수를 추가하여 여기에 함수 삭제를 작성하여 삭제하고 공간에 코드를 붙여 넣기 만하면됩니다. 그러면 이제는 올바르게 진행해야합니다.
따라서 우리는 기능을 전혀 변경하지 않았 음을 알 수 있지만이 논리를 많이 정리했습니다.
그래서 우리의 루프가 훨씬 짧아지고 더 쉽게 사용자가 목록을 입력하면 새로운 목록을 입력하면 사용자가 새로 입력해야 할 일을해야합니다. 삭제 삭제를 입력 한 다음 입력을 다시 확인하고 전체 프로세스를 반복하십시오.
그럼 그냥 작동하는지 확인해 봅시다.
페이지를 새로 고칩니다.
우리는 무엇을하고 싶습니까.
목록을 작성하고 목록을 얻습니다.
가서 마무리 요리를 새로 추가하겠습니다.
다시 목록으로 만들어 보겠습니다.
이번에는 하나의 삭제를 제거합니다.
나는 거북이 지수 0을 사다.
나는 그것을 제거 할 것입니다.
내 메시지가 삭제되도록하고 그만두고 그만 둡니다.
당신이 그만 뒀다고 말해 줬어.
그게 우리가 지금 할 일 전부입니다.
요약하고자하는 몇 가지 사항이 있습니다.
첫 번째는 할 일을 나열하기 위해 각각을 사용한다는 것입니다.
그리고 우리는 두 번째 논쟁을 통해 무엇이라도 지명 될 수있었습니다.
그리고 이것은 전달 된 모든 항목의 색인을 나타냅니다.
우리가 한 다른 것은 스플 라이스 (splice)와 스플 라이스 (splice)에 대해 배우며 배열에서 특정 항목을 삭제 한 방법입니다.
두 가지 주장이 필요합니다.
삭제할 항목의 위치와 그 색인 다음에 삭제할 항목 수입니다.
여기서 마지막으로 언급하고자하는 것은 우리가 일을 한 번만 작성한 것 이상으로 이러한 함수를 호출하지는 않았지만 우리는 일을 별도의 함수로 리팩터링했다는 것입니다.