アプリケーション開発総合クラス1週間

7685 ワード

constの値は変わらない
const a = 1000
// 이렇게 선언하면
// 추가로 a에 대한 선언했을 때 에러 발생
文字も追加できます
let a = chellenger
let b = coding
console.log(a + b) // 이게 가능
リストのlengthという接続演算子(.)使用できます.
変数を宣言するときにリスト形式として宣言しない場合は、対応するlength接続演算子は使用できません.
let a = 100
a.length 
// 이렇게 하면 안 먹음
そしてパソコンは0から読み始め、1つ目は2つ目のOです.
リストに追加、削除の方法がありますが、まずpass(検索後につなぎ合わせましたが、成功しなかったのでスキップ)
専制的
{}と{a:b}を利用する
前半は「キー」
後者を「値」(bellクラス)と呼ぶ
1つのキーはaであり、値はbの形状である.
値を取り出すにはキー値を取り出さなければなりません
console.log(a_dict["a"])
ディクシャナに値を追加するには
a_dict[c:d]
これでいいです.ここではカッコを使ってもいいです.これは違います.
リストをディックの年譜と一緒に使うことができます.
例:
let customers = [{"name":"yangwon","gender":"MAN"},
                 {"name":"hyunwoo","gender":"MAN"},
                 {"name":"yeonjoo","gender":"WOMAN"}]
console.log(customers)
これで利用できます.
出力するには:
console.log(顧客[1])
お客様[1]だけでもいいですよね?
1番ディック郡のname値を取得するには

n.問題


console.log(customers[1])
customers[1]
この2つの出力値は同じです.
お客様[1][name]は受け入れられます
console.log(customers[1]["name"])
これを作るとなぜ価格の形が違うのでしょうか.

追加するには、次の手順に従います.
customers.push({"name":"jihyun","gender":"WOMAN"})
これでいい
そしてこのようにリストとディクシャナ構造をJSONデータ構造と呼ぶ
スモッグデータも確認したが、コピーした結果、エラーが発生し、テストができなかった.
ヤPk临时保存删除好生气...

1-7 JavaScript基礎構文-4**


まだ分からない
for (let i = 0; i < 100; i++) {
	console.log(i);
}
これで1から
全部で3段階あります.
最初-開始条件
2番目-終了条件
3つ目-直接入れる感じ?3つ目はよくわかりません.
Swiftのwhileとあまり変わらない

練習1-8 Javascript基礎


0からn-1までの関数の作成

function get_sum(n) {
    let sum = 0
    for (let i = 0; i < n; i++) {
        sum += i;       
    }
    return sum
}

let result = get_sum(10);
console.log(result);
ああ、なぜここにreturnがあるべきか分かりません.
上にsum+=iがあっても1つの繰り返しを実行できますが、なぜreturnがなければだめなのでしょうか…?
だから質問した


私が理解していることを書いてください.
get sum関数では、0から10まで計算されています.
しかし、このように計算された値は、外部変数(result)で計算できるはずです.
そのため、リターン値が必要です

アレイから特定の要素数を取得

let fruit_list = ['사과','감','감','배','포도','포도','딸기','포도','감','수박','딸기']
let count = 0


for (let i=0; i<fruit_list.length; i++){
    
    let fruit = fruit_list[i]
    if(fruit == "수박"){
    count += 1

}

}
console.log(count)
文字列を条件に入れることもできます.
しかし、もう少し条件をつけたいです.
    if(fruit == "수박" || "딸기"){
このように、このように条件を追加しましたが、これは食べません.
いけない理由がわかった.
	let fruit = fruit_list[i];
最終的には、果物に2つの項目が同時に含まれる場合はありません.
したがって、上記条件は成立しない

出力40未満の球名(MSRSTE NM)と値(IDEX MVL)

for (let i=0; i<mise_list.length; i++){ // 미세 리스트만큼 반복을 돌린다
    let mise = mise_list[i]; // 특정 변수에 데이터를 불러오는 작업 제이슨 데이터 그대로 하는 게 아니라 이렇게 진행해야 특정 딕셔너리의 데이터에서 작업을 처리할 수 있음
    if (mise["IDEX_MVL"] < 40){ // 조건을 치는데 해당 변수에서의 항목을 찾아야 함 따라서 let으로 선언한 변수 부르고 뒤에 []를 통해 딕셔너리의 키 값을 불러올 수 있음 여기서는 그 값이 ""이렇게 텍스트도 한정해서 볼 수 있으니 개꿀이라고 할 수 있다
    let gu_name = mise["MSRSTE_NM"] // 
    let gu_mise = mise["IDEX_MVL"]
    console.log("수치 40 이하 구 이름: " + gu_name + ", 해당 구 수치 " + gu_mise)
    }
}
あ、よくわかりました.
for (let i=0; i<mise_list.length; i++){
    let sell = mise_list[i];
    if (sell["IDEX_MVL"] < 40){
    console.log("수치 40 이하 구 이름: " + mise["MSRSTE_NM"] + ", 해당 구 수치 " + mise["IDEX_MVL"])
    }
}
しかし、このように略すことができます.
letでguname gumiseを作る必要はありません
コンソールから直接撮影すると、すぐにmise["MSRSTE NM"]にロードできます.

1-9アプリケーション開発に使用される一般的なJavascript-1


関数をもう少し短くしてください.-矢印関数
[기존 방식]

let a = function() {
  console.log("function");
}
a();

[최신 방식]

let a = () => {
  console.log("arrow function");
}
a();.
ディクシャナリキと値段を早く出せ!非構造割り当て
//객체 
let blog = {
	owner : "noah",
	url : "noahlogs.tistory.com",
	getPost() { 
		console.log("ES6 문법 정리"); 
	}
};

//기존 할당 방식
let owner = blog.owner
let getPost = blog.getPost()

//비구조 할당 방식
let { owner, getPost } = blog;       
//각각 blog 객체의 owner , getPost() 의 데이터가 할당
//blog의 키 값과 이름이 같아야 해요!
//(예 - owner가 아니라 owner2를 넣어보세요! 아무것도 안 들어온답니다.)

** 앞으로 리액트 네이티브 앱을 만들며 가장 많이 사용할 방식**

//함수에서 비구조 할당 방식으로 전달된 딕셔너리 값 꺼내기
let blogFunction = ({owner,url,getPost}) => {
	console.log(owner)
	console.log(url)
	console.log(getPost())
}

blogFunction(blog)

1-10アプリケーション開発に使用される一般的なJavascript-2


JavaScriptで自由に改行!-異種
const id = "myId" ;
const url = `http://noahlog.tistory.com/login/${id}` ; // 중간에 ${}를 통해 함수를 불러올 수 있음
//과거에는 "abc" + 함수 이렇게 했어야 함
// 그런데 주의할 점은 ""로 묶는 게 아니라 백틱``으로 해야 안에 문자가 아닌 것을 인식할 수 있음

const message = "줄바꿈을 하려면 \n 이 기호를 써야 했죠!"

const message = ` 줄바꿈도 마음대로
사용이 가능합니다. ` 
ディック・シャナリーを短く作ってみよう!-オブジェクト範囲の
[기존 방식]

var name = "스파르타";
var job = "developer";

var user = {
  name: name,
  job: job
}

console.log(user);
//{name: "스파르타", job: "developer"}
あ、正直よくわかりませんが
省略する

1-11アプリケーション開発に使用される一般的なJavascript-3


地図とインポートエクスポートを習ったことがあります.
先に行きましょう.

1~12週目終了&作業説明

let fruit_list = ['사과','감','감','배','포도','포도','딸기',
'포도','감','수박','딸기']

let count = 0;

fruit_list.map((value, i) => {
let fruit = fruit_list[i]
if (fruit == "딸기") {
count += 1
}
})

console.log(count);
電子メールチェック関数の作成-indexOf
function checkEmail(email){
if (email.indexOf('@') !== -1) { // indexOf는 @가 있는 위치를 찾아줌 없으면 -1임. 따라서 -1이 아니라면 반드시 @가 있다고 판단 가능함
console.log("이메일이 맞습니다")
}
else {
console.log("이메일 형식이 틀렸습니다")
}
}

checkEmail('[email protected]')
checkEmail('yangwon9616$gmail.com')
ただし、上の関数には以下の制限があります.
@の数が2つより大きい場合は、正しいことを示します.
@以外の特殊記号等が存在する場合があります
文字数、英語、ハングルなどの制限はありません
そのため、これらの条件を詳細に設定する必要があります.
function checkEmail(email) {

    var emailReg = /^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i; // 이건 걍 조건임. 이메일 입력란에 들어갈 조건. 사람들이 좋은 조건을 만들어놨네 개꿀;

    if (emailReg.test(email)) { // test는 해당 email이 위의 조건에 부합하는지 따짐. 부합하면 true, 부합하지 않으면 false가 나옴. 
    console.log("이메일 형식이 맞습니다") // 이 경우에는 true기 때문에 맞다는 얼럿이 나오면 됨
    }else{
    console.log("이메일 형식이 틀렸습니다")
    }

}

checkEmail('[email protected]') 
checkEmail('yangwon9616@@gmail.com')