이더 리움은 스마트 계약 플랫폼으로서의 암호화 공간에서 그 자체로 독특한 틈새 시장을 확보했습니다. 전 세계의 개발자는 이더 리움 블록 체인 바로 위에 자신 만의 분산 애플리케이션을 만들 수 있습니다. 그러나 그렇게하기 위해서는 개발자가 스마트 계약을 코딩하는 데 사용되는 언어 인 견고함에 매우 정통해야합니다..

자바 스크립트 및 솔리 디티 소개 1 부

Javascript 및 Solidity 소개

이 가이드의 목적은 견고 함의 기본을 정리하는 것입니다. 더 고급 과정을 원하신다면 견고성 과정을 진행하는 것이 좋습니다. 이 가이드는 기본 사항 만 설명합니다..

따라서 견고성을 시작하기 전에 알아야 할 두 가지 사항이 있습니다.

  • 이더 리움 블록 체인의 기본
  • JavaScript의 기본

일반적으로 블록 체인 기술과 이더 리움의 기본 사항을 배우고 싶다면 저희 가이드를 찾아 보시면됩니다..

자, 이제 우리는 두 번째 지점에 왔습니다.

JavaScript에 대한 기본 지식이 필요한 이유?

첫째, 견고성 문서에서 언급했듯이 JavaScript의 영향을받습니다. 둘째, 많은 사람들이 지적했듯이, 견고성은 구문과 관련하여 JavaScript와 매우 유사합니다. 그 이유는 아주 간단합니다.

JavaScript는 세계에서 가장 수요가 많고 인기있는 언어 중 하나입니다. 이더 리움 창립자들은 자바 스크립트를 기반으로 견고성을 모델링하면 개발자가이를 더 빨리 선택할 수있을 것이라고 생각했습니다. 따라서 견고성에 대해 알아보기 전에 JavaScript로 시작하겠습니다.이 기사의 2 부에서 다룰 것입니다..

자바 스크립트 및 솔리 디티 소개

JavaScript는 Brendan Eich에 의해 만들어졌으며 나중에 Mozilla Firefox 및 Brave 브라우저를 찾을 것입니다. JavaScript 또는 JS는 가볍고 동적 인 객체 지향 프로그래밍 언어입니다. HTML 및 CSS와 함께 JavaScript는 웹 디자인의 3 가지 기둥을 형성합니다. HTML은 웹 사이트에 콘텐츠를 넣는 데 도움이되고 CSS는 디자인 레이아웃에 도움이됩니다..

그래서 JS는 정확히 무엇을합니까??

자바 스크립트가 등장하기 전에는 웹 사이트가 매우 정적이었습니다. JavaScript는보다 사용자 친화적이고 역동적 인 웹 사이트의 시대를 가져 왔습니다. 이 맥락을 유지하고 온라인에서 얼마나 많은 비즈니스가 이루어지고 있는지 깨닫게되면 Javascript에 대한 강력한 사례를 만들 수있는 이유를 알 수 있습니다. JS 단독으로 웹 사이트를보다 사용자 친화적으로 만들었습니다..

원래 JavaScript는 클라이언트 측 스크립트 여야했지만 node.js와 같은 여러 구현은 서버 측 구현도 허용했습니다. JavaScript는 Mozilla Foundation에서 공식적으로 관리하며 새로운 언어 기능이 주기적으로 추가됩니다..

JavaScript의 특징

다음은 JavaScript의 기능입니다.

  • 모든 최신 브라우저에는 기본 제공 JavaScript 엔진이 있습니다. 사실 나중에 자세히 살펴 보겠습니다.
  • JavaScript에는 구조화 된 프로그래밍 구문이 있으며 기능 및 블록 범위가 있습니다. 범위 지정을 잠시 다룰 것이므로 걱정하지 마세요.
  • JavaScript는 동적으로 입력됩니다. 즉, 얼마 전에 정수 값을 저장하던 변수는 런타임 중에 문자열을 저장할 수 있습니다.
  • JavaScript는 객체 지향 프로그래밍 언어입니다. 우리는 이것을 조금 후에 다룰 것입니다
  • JavaScript는 기능적인 언어입니다. 따라서 기능을 통한 변조를 지원합니다.
  • JavaScript는 암시 적 및 명시 적 위임도 지원합니다..
  • JavaScript는 대소 문자를 구분하므로 “width”는 “Width”와 다릅니다..

좋습니다. 각 기능을 자세히 살펴 보겠습니다..

기능 # 1 : JS가 내장 된 브라우저

이를 위해 Google 크롬을 사용할 것입니다..

브라우저에서 새 탭을여십시오. 브라우저의 아무 곳이나 마우스 오른쪽 버튼으로 클릭하고 “검사”를 클릭합니다.

Javascript 및 Solidity 소개 (Blockgeeks)

클릭하면 다음 창이 표시됩니다.

Javascript 및 Solidity 소개 (Blockgeeks)

이것은 Google 크롬 브라우저의 내장 콘솔입니다. JS 도구를 사용하려면 콘솔 부분으로 이동하면됩니다. 여기에 있습니다 :

Javascript 및 Solidity 소개 (Blockgeeks)

좋습니다. 이제 코딩을 시작하겠습니다.!!!

여기에서 간단한 수학 연산을 수행 할 수 있습니다.

Javascript 및 Solidity 소개 (Blockgeeks)

또는 원하는 경우 여기에서 간단한 “Hello World”프로그램을 수행 할 수 있습니다..

이를 위해“console.log (‘Hello World’);”를 입력합니다.

Javascript 및 Solidity 소개 (Blockgeeks)

“console.log ()”는 콘솔에 출력을 출력 할 수있는 함수입니다. 또한 “;”로 함수를 종료 한 방법을 확인하십시오. JS에서는 세미콜론을 사용하여 명령어를 종료해야합니다..

명령을 입력하고 “Enter”를 누르는 순간 콘솔 자체에 해당 출력이 표시됩니다..

흥미롭게도 화면에 출력이 팝업되도록하려면 “alert ()”함수를 사용하면됩니다. 따라서“alert (‘Hello World’);”를 입력하면 콘솔에 다음이 표시됩니다..

Javascript 및 Solidity 소개 (Blockgeeks)

꽤 멋지다?

이제 가장 기본적인 형태의 프로그래밍을 시작하여 브라우저 내부의 JS 엔진을 보여 드리고자합니다. 잠시 후에 프로그래밍에 대해 더 자세히 알아 보겠습니다..

기능 # 2 : 기능 및 블록 범위 지정

함수와 블록 범위의 차이점을 이해하려면 JS의 변수 선언에 대해 조금 알아야합니다..

C ++에서 정수 변수를 선언하려는 경우 다음을 수행 할 수 있습니다.

int a;

Java에서는 언어가 동적으로 입력되므로 개별 데이터 유형에 대해 걱정할 필요가 없습니다. 변수를 선언하는 데 사용할 수있는 세 가지 옵션 (var, let 및 const)이 있습니다..

Var

Var은 변수를 할당하는 매우 간단한 방법입니다..

var a = 10;

console.log (a);

// 반환

10

a = 20;

// 동적 재 할당 표시

console.log (a);

20

그래서 var는 매우 간단 해 보입니다.?

그러나 var 변수는 “함수 범위”이기 때문에 더 이상 프로그래밍에서 var를 사용하는 것은 좋은 습관으로 간주되지 않습니다. 즉, var 변수는 함수 내에서 선언 된 다음 함수 내에서만 사용할 수 있습니다. 또는 함수 내에서 생성되지 않은 경우 “전역 적으로 범위 지정”되어 모든 곳에서 사용할 수 있습니다..

이것이 어떻게 작동하는지 봅시다. 다음 프로그램을 고려하십시오. 이 기사) :

function setWidth () {

var width = 100;

console.log (너비);

}

폭;

이 프로그램을 실행하면 다음과 같은 오류가 표시됩니다..

Javascript 및 Solidity 소개 (Blockgeeks)

이유를 짐작할 수 있습니까?

“var”로 선언 한 “width”는 함수 내에서 선언되었습니다. 이것이 바로 함수의 범위 내에서만 유효하고 다른 곳에서는 유효하지 않은 이유입니다..

마찬가지로 이제 우리는 다른 극단.

다음 코드를 고려하십시오.

var age = 100;

if (연령 > 12) {

var dogYears = 연령 * 7;

console.log (`당신은 $ {dogYears} 살입니다!`);

}

위의 코드에 대해주의해야 할 두 가지 사항.

첫째, “$ (dogYears)”를 사용하면 변수 값을 인쇄 할 수 있습니다. 둘째, var 변수는 함수 내에서 선언되지 않습니다. 이 때문에 범위에 묶여 있지 않으므로 실행 후 호출 할 수도 있습니다..

당신은 700 개입니다!

그러나 이제 콘솔에서 dogYears를 호출하면 700이 반환됩니다..

왜 이런 일이 일어 났는지 아십니까?

함수 내에서 변수를 선언하지 않음으로써 우리는 글로벌로 만들었습니다..

따라서 나중에 참조 할 수 있도록 이것을 명심하십시오. var는 중괄호로 제한되지 않습니다. 범위를 정의하는 기능입니다.

이것이 var 대신 let과 const를 사용하는 이유입니다..

let과 const를 사용하는 이유?

완전히 대조적으로, let과 const는 그 기능을하는 블록의 범위입니다. 블록은 여는 “{“및 닫는 “}”중괄호 세트로 정의됩니다..

그래서, 만약 우리가 “var”가 아니라 “let”으로 dogYears를 선언했다면 어떤 일이 일어날 것이라고 생각하십니까??

var age = 100;

if (연령 > 12) {

dogYears = 연령 * 7;

console.log (`당신은 $ {dogYears} 살입니다!`);

}

“if”블록 내에서 선언되므로 해당 변수의 수명은 블록이 끝나 자마자 끝납니다..

노트 : if-else 함수에 대해 조금 다룰 것입니다..

이제이 프로그램 (비주얼 코드 내부)을 실행하고 콘솔에서 dogYears를 호출하면 다음 메시지가 표시됩니다.

“Uncaught ReferenceError : dogYears가 정의되지 않았습니다.”

let 대신 const를 사용하여 이러한 변수를 선언 할 수도 있습니다. 그러나 const를 사용하면 변수가 변경되지 않습니다. 따라서 런타임 중에 값을 변경하려는 경우 오류가 발생합니다.

Javascript 및 Solidity 소개 (Blockgeeks)

기능 # 3 : 동적 입력

동적 형식이란 변수가 프로그램 실행 중에 해당 형식을 변경할 수 있음을 의미합니다. 따라서 문자열을 저장하는 변수 인 경우 실행 중에 정수도 저장할 수 있습니다..

따라서 콘솔로 이동하여 다음을 실행하십시오.

let var2 = 10;

var2 =‘안녕하세요’;

지금 var2를 호출하면 처음에 정수로 선언 했더라도 “Hello”를 반환합니다..

사실, 더 심층적 인 작업을 수행하고 변수가 상태를 어떻게 변경하는지 실제로 관찰하는 것은 어떨까요?

이를 위해 “typeof ()”함수를 사용합니다. 이 함수는 특히 사용중인 변수의 유형을 알려줍니다. 이제 위에서 준 것과 동일한 예를 고려하십시오..

Javascript 및 Solidity 소개 (Blockgeeks)

따라서 var2에 숫자가있을 때 유형은 숫자였습니다. 그러나 “Hello”를 저장하는 순간 문자열로 변경되었습니다..

기능 # 5 : 객체 지향 프로그래밍 언어

JavaScript는 프로세스 지향 언어가 아닌 객체 지향 프로그래밍 (OOP) 언어입니다. C와 같은 프로세스 지향 언어는 메모리에서 작동하는 명령 목록이있는 프로그램을 사용했습니다..

반면에 OOP는 서로 상호 작용할 수있는 객체를 생성 할 수있는 “클래스”라는 청사진을 생성 할 수 있습니다. 이러한 개체는 프로그램을 실행합니다..

이제 OOP에는 네 가지 기둥이 있습니다.

  • 캡슐화
  • 추출
  • 다형성
  • 상속

Javascript 및 Solidity 소개 (Blockgeeks)

캡슐화

캡슐화는 데이터와 기능을 하나의 단위로 묶는 아이디어입니다. 아이디어는 물체의 초기 상태를 숨기고 모든 것을 단단한 팩에 묶는 것입니다..

추출

추상화는 사용자가 복잡한 문제없이 프로그램을 사용할 수 있음을 의미합니다..

자동차를 생각해.

당신이 자동차를 운전할 때 당신이 신경 쓰는 모든 것은 당신의 열쇠를 넣고 다른 어떤 것도 치지 않도록 차량을 조종하는 것입니다. 엔진이 작동하는 방식과 점화가 연료를 태우는 방식은 신경 쓰지 않습니다..

계승

상속은 OOP의 가장 중요한 속성 중 하나입니다..

상속은 객체 나 클래스가 다른 객체 나 클래스를 기반으로하고 그 구현의 일부를 유지할 수 있도록합니다. 대부분의 클래스 기반 객체 지향 언어에서 상속을 통해 생성 된 객체는 부모 객체의 대부분의 속성 및 동작을 얻습니다.

다형성

다형성은 언어의 연산자가 둘 이상의 속성을 가질 수있는 속성입니다. 가장 유명한 예는 “+”입니다. 수학적 더하기 연산자로 사용될뿐만 아니라 두 문자열을 하나로 결합하는 데에도 사용할 수 있습니다. 이것을 연결이라고합니다..

Javascript 및 Solidity 소개 (Blockgeeks)

기능 # 6 : 암시 적 및 명시 적 위임

위임은 기본적으로 객체가 다른 객체의 용어로 정의 될 수 있음을 의미합니다. 위임은 거의 책임의 위임을 의미합니다. 이제 위임은 명시 적이거나 암시적일 수 있습니다..

명시 적 위임을 사용하면 객체는 자신이 알고있는 다른 객체에 메시지를 명시 적으로 위임 할 수 있습니다. 암시 적 위임을 사용하면 객체가 다른 객체를 “상위”로 명시 적으로 지정할 수 있습니다. 받는 개체가 이해하지 못하는 메시지는 자동으로 (암시 적으로)이 부모에게 위임됩니다..

암시 적 위임은 두 가지 범주로 더 세분화 될 수 있습니다.

  • 런타임 동안 위임 구조가 동적으로 변경 될 수있는 예기치 않은 위임.
  • 개체가 수명 동안 상속 된 상위 개체를 변경할 수없는 예상 위임.

코딩을 시작하기 전에

이제 이론이 끝났으므로 대부분 코딩을 시작하겠습니다! 이러한 프로그램을 실행하려면 실행할 수있는 환경이 필요합니다..

Visual Studio Code를 사용할 것입니다. 이를 수행하려면 code.visualstudio.com 최신 버전의 Visual Studio 다운로드.

설치가 완료되면이 화면이 표시됩니다..

Javascript 및 Solidity 소개 (Blockgeeks)

이제 파일로 이동 ->열다

그 후에 폴더를 만들어야합니다. 이 폴더를 ‘Blockgeeks-JS’라고하겠습니다..

Javascript 및 Solidity 소개 (Blockgeeks)

그 후에 수행해야 할 두 가지 작업이 있습니다.

Javascript 및 Solidity 소개 (Blockgeeks)

그 버튼을 클릭 한 후 “index.html”이라는 파일을 생성합니다..

Javascript 및 Solidity 소개 (Blockgeeks)

이 새 파일의 첫 번째 코드 줄에 “!”를 입력합니다. 뒤에 탭.

Javascript 및 Solidity 소개 (Blockgeeks)

그렇게하면 화면에 HTML 코드 블록이 나타납니다. 이 코드는 신경 쓸 필요가 없습니다. 기본적으로 JS 코드를 사용할 수있는 호스트를 제공합니다..

그 후 아래 표시된 확장 버튼을 클릭하십시오.

Javascript 및 Solidity 소개 (Blockgeeks)

이제 “Live Server”를 검색하고 확장을 설치하십시오..

Javascript 및 Solidity 소개 (Blockgeeks)

설치되면 “index.html”파일로 이동하여 “Open With Live Server”를 선택합니다..

Javascript 및 Solidity 소개 (Blockgeeks)

이것이 지금하는 일은 기본 브라우저에서 JS 프로그램을 실행할 수있게 해준다는 것입니다. 실제로이 옵션을 선택하는 순간 브라우저에 새 탭이 열립니다..

자, 이제 “index.html”의 HTML 코드를 살펴 보겠습니다..

<!DOCTYPE html>

<html lang ="ko">

<머리>

<메타 문자셋 ="UTF-8">

<메타 이름 ="뷰포트" 내용 ="너비 = 장치 너비, 초기 배율 = 1.0">

<메타 http-equiv ="X-UA 호환" 내용 ="즉 = 가장자리">

<표제>문서 제목>

머리>

<몸>

몸>

HTML>

이제 신체 부위에서 코딩을 시작할 수 있습니다. 예 : 본문 영역에 헤더 태그를 추가하고 내용으로 채워 보겠습니다..

<!DOCTYPE html>

<html lang ="ko">

<머리>

<메타 문자셋 ="UTF-8">

<메타 이름 ="뷰포트" 내용 ="너비 = 장치 너비, 초기 배율 = 1.0">

<메타 http-equiv ="X-UA 호환" 내용 ="즉 = 가장자리">

<표제>문서 제목>

머리>

<몸>

<h1> BLOCKGEEKS에 오신 것을 환영합니다! h1>

몸>

HTML>

이제이 파일을 저장하고 열린 새 탭을보십시오..

꽤 멋지다!

자 이제 자바 스크립트부터 시작하겠습니다..

본문의 헤더 태그 바로 아래에 스크립트 태그를 추가하고 콘솔에 “Hello World”를 인쇄하겠습니다..

<!DOCTYPE html>

<html lang ="ko">

<머리>

<메타 문자셋 ="UTF-8">

<메타 이름 ="뷰포트" 내용 ="너비 = 장치 너비, 초기 배율 = 1.0">

<메타 http-equiv ="X-UA 호환" 내용 ="즉 = 가장자리">

<표제>문서 제목>

머리>

<몸>

<h1> BLOCKGEEKS에 오신 것을 환영합니다! h1>

<스크립트> console.log (‘Hello World’); script>

몸>

HTML>

그 후에 탭으로 이동하십시오. 마우스 오른쪽 버튼을 클릭하고 “검사”를 선택한 다음 이전에 보았던 것처럼 콘솔 탭으로 이동합니다..

다음과 같이 표시됩니다.

노트: Head 섹션이 아닌 Body 섹션에 스크립트 부분을 배치 한 이유는 사이트 콘텐츠가로드되기 전에도 JavaScript가 실행되는 것을 원하지 않기 때문입니다..

이제 표준 프로그래밍 모범 사례에 따르면 JS를 HTML 프로그램에 코딩해서는 안됩니다. HTML 부분과 JS 부분은 따로 보관해야합니다..

또한 스크립트는 매우 길고 복잡해질 수 있으므로 HTML 코드 내부의 모든 코드를 짜 내려는 것은 의미가 없습니다..

그래서 우리는 또 다른 새 파일을 만들고 이름을“index.js”로 지정합니다..

Javascript 및 Solidity 소개 (Blockgeeks)

이 부분에서는 스크립트 태그 안에 넣은 모든 것을 넣을 것입니다.

그러나 “index.html”파일이 기본 파일입니다. 주 파일이 JS 파일을 참조하는 데 도움이되는 다른 코드 줄을 추가해야합니다. 우리가 할 방법은 약간의 수정을하는 것입니다..

<!DOCTYPE html>

<html lang ="ko">

<머리>

<메타 문자셋 ="UTF-8">

<메타 이름 ="뷰포트" 내용 ="너비 = 장치 너비, 초기 배율 = 1.0">

<메타 http-equiv ="X-UA 호환" 내용 ="즉 = 가장자리">

<표제>문서 제목>

머리>

<몸>

<h1> BLOCKGEEKS에 오신 것을 환영합니다! h1>

<스크립트 src =”index.js”>스크립트>

몸>

HTML>

이것이하는 일은 정확히 JS 프로그램이있는 HTML 프로그램을 보여주는 것입니다. 또한 .html 및 .js 파일을 항상 저장하십시오..

이것이하는 일은 정확히 JS 프로그램이있는 HTML 프로그램을 보여주는 것입니다..

또한 .html 및 .js 파일을 항상 저장하십시오..

자, 이것으로 기본 사항을 거의 다룹니다. 코딩을 해봅시다!

간단한 코딩

# 1 수학 연산

JS에서 몇 가지 기본적인 수학 연산을 해봅시다..

하자 = 10;

하자 b = 20;

하자 c = 30;

하자 d = a + b * c;

console.log (d);

대답은 무엇일까요??

답이 900이라고 생각하세요?

자, 프로그램을 실행하고 우리가 얻는 것을 보자?

Javascript 및 Solidity 소개 (Blockgeeks)

610.

왜 우리가 그것을 얻었다 고 생각합니까??

JS는 왼쪽에서 오른쪽으로 이동하는 대신 PEMDAS를 따릅니다.

P = 괄호

E = 지수

M = 곱셈

D = 분할

A = 추가

S = 빼기

따라서 작업은 오름차순으로이 우선 순위를 따릅니다.

이자형

MD

같이

곱셈과 나눗셈은 동일한 우선 순위를 갖습니다. 덧셈과 뺄셈도 마찬가지입니다..

# 2 어레이

배열은 요소 그룹을 포함하는 데이터 구조입니다. 일반적으로 이러한 요소는 정수 또는 문자열과 같은 동일한 데이터 유형 (JavaScript의 경우 필요하지 않음)입니다. 배열은 일반적으로 프로그램에서 관련 값 집합을 쉽게 정렬하거나 검색 할 수 있도록 데이터를 구성하는 데 사용됩니다..

아래 코드를 확인하십시오.

let names = [ ‘Mark’, ‘Will’];

console.log (이름);

Javascript 및 Solidity 소개 (Blockgeeks)

“(2)”옆에있는 화살표가 보이십니까? 그것을 클릭하면 확장되어 다음을 표시합니다.

이것에 따르면 :

  • 배열의 길이는 2 개의 요소가 있으므로 2입니다.
  • 첫 번째 요소 “Mark”의 인덱스는 0입니다.
  • 두 번째 요소 “Will”의 인덱스는 1입니다.

런타임 중에도 배열에 요소를 동적으로 추가 할 수 있습니다. 여기에서 확인하십시오.

let names = [ ‘Mark’, ‘Will’];

이름 [2] = ‘쿠마르’;

console.log (이름);

콘솔에서 이것을 인쇄하면 다음을 얻을 수 있습니다.

보시다시피 런타임 동안 단일 요소로 확장되는 배열이 있습니다. 이제 자바 스크립트에서는 동일한 데이터 유형을 추가 할 필요가 없습니다. 배열에 숫자를 추가하는 것은 어떻습니까??

let names = [ ‘Mark’, ‘Will’];

이름 [2] = ‘쿠마르’;

이름 [3] = 1;

console.log (이름);

이제 출력은 다음과 같습니다.

Javascript 및 Solidity 소개 (Blockgeeks)

배열을 완료하기 전에. 한 가지 더 있습니다.

다음과 같이 배열의 길이를 확인할 수 있습니다.

let names = [ ‘Mark’, ‘Will’];

이름 [2] = ‘쿠마르’;

이름 [3] = 1;

console.log (names.length);

이제 출력은 다음과 같습니다.

Javascript 및 Solidity 소개 (Blockgeeks)

배열의 길이는 4입니다..

# 3 기능

다음에는 프로그램에서 가장 중요한 부분 중 하나 인 기능이 있습니다. 함수를 선언하면 작업을 훨씬 더 간단하게 만들고 많은 반복을 줄일 수 있습니다. 함수에는 다양한 입력에 대해 작동하는 코드 단위가 포함되어 있으며, 그 중 대부분은 변수이며, 입력을 기반으로 한 실제 작업이나 변수 값 변경과 관련된 구체적인 결과를 생성합니다. 프로그램 런타임 중에 이러한 함수를 호출하고 코드를 실행할 수 있습니다..

예를 보자.

function urgent () {

console.log ( ‘Watch JRE 1169’);

}

긴급한();

위의 함수는 메시지를 인쇄합니다. 함수를 선언 한 후에는 단순히 함수를 호출하여 실행합니다. 출력을 살펴 보겠습니다.

Javascript 및 Solidity 소개 (Blockgeeks)

이제 믹스에 약간의 양념을 추가하겠습니다.

function urgent (num) {

console.log ( ‘Watch JRE’+ num);

}

긴급 (1169);

출력을 살펴 보겠습니다.

Javascript 및 Solidity 소개 (Blockgeeks)

이제 함수의 매개 변수 수와 함수 호출 수를 늘리겠습니다..

function username (firstName, lastName) {

console.log ( ‘이름은’+ firstName + ”+ lastName입니다);

}

username ( ‘Vitalik’, ‘Buterin’);

username ( ‘사토시’, ‘나카 모토’);

따라서이 코드를 실행하면 다음과 같은 출력이 표시됩니다.

Javascript 및 Solidity 소개 (Blockgeeks)

함수의 가장 좋은 속성 중 하나는 값을 반환하는 것입니다. 따라서 복잡한 수학적 과정을 수행하는 함수를 사용하여 변수에 값을 반환 할 수 있습니다..

숫자의 제곱을 계산하고 값을 반환하는 함수를 선언하는 것은 어떻습니까?

function square (num) {

return num * num;

}

let result = square (2);

console.log ( ‘2의 제곱은’+ result);

출력은 다음과 같습니다.

Javascript 및 Solidity 소개 (Blockgeeks)

# 4 조건문

“if-else”와 같은 조건문은 프로그래밍의 초석입니다. 이전에 본 것처럼 JavaScript에서도 동일한 작업을 수행 할 수 있습니다. 이 코드를 고려하십시오.

하자 = 20;

하자 b = 30;

만약 > 비){

console.log (a + ‘가 큼’);

} else {

console.log (b + ‘가 큼’);

}

이것은 더 큰 숫자를 확인하고 인쇄하는 간단한 프로그램입니다.

위의 코드는 다음과 같은 출력을 제공합니다.

Javascript 및 Solidity 소개 (Blockgeeks)

# 5 루프

루핑은 프로그램이 지정된 횟수만큼 실행되도록 루프 내부에 주어진 코드를 실행할 수 있도록합니다..

계속하기 전에 증가 (또는 감소의 의미)가 무엇인지 알아야합니다..

증가는 특정 변수의 값을 주어진 양만큼 증가시키는 것을 의미합니다. 따라서 “a”와 같은 특정 변수에 저장된 값을 1 씩 늘리려면 다음을 수행합니다.

a = +1;

또는 더 효율적으로 만들기 위해 단순히 “a ++”를 수행합니다. 이는 a = a + 1과 동일합니다.

마찬가지로 값을 감소시키기 위해 다음을 수행합니다.

a = a-1;

또는

ㅏ-;

좋아, 루프로 돌아 가기.

JavaScript에서 사용되는 루프 문은 다음과 같습니다.

  • 동안
  • Do-While
  • 에 대한

While 루프

while 루프는 가장 간단한 형태의 루프 문입니다. 다음과 같이 작동합니다.

while (조건) {

성명서;

증가;

}

이걸 고려하세요:

하자 i = 1;

동안 (나는 < 삼){

console.log (i);

i ++;

}

이 코드를 실행하면 다음과 같은 출력이 제공됩니다.

그래서 여기서 일어난 일?

우리는 변수를 1로 초기화하고 그 값이 1보다 작은 한 변수를 인쇄하도록 프로그램에 지시했습니다. 또한 루프 내에서 “i”값을 계속 증가 시켰습니다. 증분하지 않았다면 프로그램은 무한 루프에 있었을 것입니다..

Do-While 루프

Do-While 루프는 다음과 같습니다.

하다{

성명서;

증가;

} while (조건);

따라서 while 루프와 달리 do-while 루프는 코드를 먼저 실행하고 나중에 조건을 확인합니다..

이제 다음 코드를 참조하십시오.

하자 i = 1;

하다{

console.log (i);

i ++;

} while (i<삼);

다음과 같이 인쇄됩니다.

따라서 프로그램 실행 중 while과 do-while의 차이점은 무엇입니까? 다음 예를 확인하십시오.

하자 i = 1;

console.log ( ‘먼저 while 루프를 확인하겠습니다’);

동안 (i < 1){

console.log ( ‘이것은 while 루프 안에 있습니다’);

}

console.log ( ‘이제 do-while을 확인하겠습니다.’);

하다{

console.log ( ‘이것은 do-while 루프 안에 있습니다.’);

} while (i < 1);

console.log ( ‘우리는 이제 루프 밖에 있습니다’);

출력은 다음과 같습니다.

Javascript 및 Solidity 소개 (Blockgeeks)

그래서 우리는 여기서 무엇을하고 있는가?

먼저 while 루프를 실행했습니다. 이 루프는 사전에 조건을 확인하기 때문에 컴파일러가 본문 내부로 들어가는 것도 허용하지 않았습니다. 따라서 while 루프 내부의 문은 실행되지 않았습니다..

그러나 do-while 루프는 조건을 확인하기 전에 문을 실행하므로 본문 내부의 문이 실행되었습니다..

For 루프

for 루프의 구조는 다음과 같습니다.

for (초기화, 조건, 증분)

{

성명서;

}

따라서 for 루프는 매개 변수 자체의 조건과 증가를 처리합니다. 런타임에서 어떻게 보입니까??

for (let i = 1; i <= 5; i ++)

{

console.log (i);

}

이 프로그램은 다음과 같은 출력을 제공합니다.

Javascript 및 Solidity 소개 (Blockgeeks)

JavaScript의 객체 지향 프로그래밍

자, 이제 JavaScript, 객체 지향 프로그래밍의 가장 중요한 측면 중 하나에 도달했습니다. 다음 코드를 고려하십시오.

let Max = {

학교 : ‘Central High’,

나이 : 14,

출생지 : ‘뉴욕’

};

console.log (최대);

그래서 우리는“Max”라는 객체를 선언했고이 객체의 요소 인 name을 선언했습니다.

  • Max가 학교에가는 곳
  • Max의 나이는 무엇입니까
  • 그가 태어난 곳

따라서 Max 개체를 인쇄하면 다음과 같은 결과를 얻을 수 있습니다.

이제 Max가 방금 생일을 맞았다 고 가정 해 보겠습니다. 그의 나이를 어떻게 바꾸나요?

let Max = {

학교 : ‘Central High’,

나이 : 14,

출생지 : ‘뉴욕’

};

최대 연령 = 15;

console.log (최대);

;

그래서 이것은 우리가 지금 얻은 출력입니다.

Javascript 및 Solidity 소개 (Blockgeeks)

이제 우리는 그 안에 함수가있는 객체를 선언 할 것입니다.

let circle = {

영역 : function () {

반지름 = 2로하자;

a = 3.14 * 반경 * 반경;

console.log ( ‘영역은’+ a);

}

};

circle.area ();

다시 한 번, 매우 간단한 개체입니다. 우리는 그 안에 영역을 계산하고 인쇄하는 영역 함수가있는 circle이라는 객체를 선언했습니다..

공장 기능

위에서 객체를 선언 한 방식은 여러 객체를 처리해야 할 때 매우 비효율적입니다. 방금 사용한 코드를 기억하십시오. 두 원의 면적을 계산해야한다면 어떨까요? 이 경우 다른 값으로 코드를 반복하는 것 외에는 옵션이 없습니다..

let circle = {

영역 : function () {

반지름 = 1로하자;

a = 3.14 * 반경 * 반경;

console.log ( ‘영역은’+ a);

}

};

circle.area ();

let circle1 = {

영역 : function () {

반지름 = 2로하자;

a = 3.14 * 반경 * 반경;

console.log ( ‘영역은’+ a);

}

};

circle1.area ();

이제 하나의 함수 대신 객체 당 10 개의 함수를 처리한다면 어떨까요? 코드가 얼마나 복잡해 질지 상상할 수 있습니까??

또한이 형식을 따르면 코드 디버깅 (코드에서 잠재적 인 오류 스캔)이 얼마나 어려울 지 상상해보십시오..

이것이 우리가 코드를보다 유용하고 깔끔하게 만들기 위해 “공장 함수”라는 것을 사용하는 이유입니다..

다음 코드를 고려하십시오.

// 하나의 매개 변수를받는 팩토리 함수 생성

function createCircle (radius) {

//이 함수는 객체 인이 값을 반환합니다.

return {

영역 : function () {

let area = 3.14 * radius * radius;

console.log (area);

}

};

}

// 팩토리 함수에서 값을 가져 오는 객체 생성

let circle = createCircle (1);

circle.area ();

// 동일한 팩토리 함수를 사용하여 객체를 동적으로 업데이트

circle = createCircle (2);

circle.area ();

자, 여기서 무슨 일이 일어나는지 봅시다.

생성 할 모든 객체의 청사진을 설정하는 “createCircle ()”이라는 Factory 함수가 있습니다..

고유 한 값을 가진 다른 개체를 만드는 데 도움이되는 “반지름”이라는 매개 변수를받습니다. 이 함수는 값을 새 개체로 반환합니다. 따라서 위 코드를 실행하면 다음과 같은 출력이 표시됩니다.

Javascript 및 Solidity 소개 (Blockgeeks)

팩토리 함수는 객체를 초기화하는 유일한 방법이 아니며 생성자도 있습니다..

생성자

그래서 생성자는 어떻게 생겼습니까??

function Circle (radius) {

this.area = function () {

a = 3.14 * 반경 * 반경;

console.log (a);

}

}

let circle = new Circle (1);

circle.area ();

let circle1 = new Circle (2);

circle1.area ();

Circle ()은 여기에서 사용한 생성자입니다. 명명 규칙에 따라 생성자는 항상 대문자로 시작해야합니다. 이전에 언급하지 않은 코드에서 눈치 채 셨을 수있는 두 가지가 더 있습니다.

  • “새로운”키워드
  • “this”키워드

“new”키워드는 생성자를 통한 객체 생성에 도움이됩니다. 기본적으로 빈 빈 개체를 만듭니다..

“this”키워드는 변수 또는 함수가이 특정 개체에 속함을 지정하는 데 도움이됩니다. 예 : 위에 주어진 코드에서“this.area”는 area 함수가 circle 객체 또는 circle1 객체에 속하는 컴파일러를 보여줍니다. 함수 내부의 “this”값은 효과적으로 호출 한 객체에 따라 달라집니다..

위 코드에서 “the”키워드를 제거하면 어떻게되는지 보겠습니다. 출력을 보겠습니다. 따라서 수정 된 코드는 다음과 같습니다.

function Circle (radius) {

면적 = function () {

a = 3.14 * 반경 * 반경;

console.log (a);

}

}

let circle = new Circle (1);

circle.area ();

let circle1 = new Circle (2);

circle1.area ()

이 프로그램을 실행하면 다음 오류가 발생합니다.

Javascript 및 Solidity 소개 (Blockgeeks)

자바 스크립트 및 견고성 : 결론

우리가 여기서 여러분에게 준 것은 매우 기본적인 소개입니다. JavaScript는 많은 잠재력을 가진 광범위한 주제입니다. 최신 상태를 유지하려면 지속적인 교육이 필요합니다. 참고로 다음 동영상을 사용했습니다.

https://www.youtube.com/watch?v=PwsigsH4oXw

https://www.youtube.com/watch?v=PFmuCDHHpwk

더 많은 교육을 받고 싶다면 각 채널을 확인하십시오..

또한 이것은 파트 1입니다..

다음 부분에서는 견고 함을 시작하겠습니다.!!

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me