210130_TIL

6837 ワード

関数宣言式vs関数式


関数宣言式(直接関数として宣言!)
最初から見ていた関数なのでよく知っています.
function func() {
	logic
}
ボートを漕ぐのに適しているのが特徴です.
開発者の意図とは異なる可能性があることに注意してください.
関数式(変数に関数を表す)
let func = function() {
logic
}
シースは適用せず、エンクロージャ、コールバック時に使用します.
バグは、エラーを減らすことができ、予測が容易になります.

がんばってください。


コード作成とは、関数内のすべての宣言を関数有効範囲の最上位レベルのJavaScriptにドラッグ&ドロップする機能です.その一つです.
内部ファミリーは実際のメモリに影響しません.
「提起」はリフトから取得した語で、宣言キーワードvarに適用され、let、constには適用されません.ここでvarを書かずにletを推奨するのは,hoistingを適用すると開発者の意図とは異なるコードが実行される可能性があるからである.
最終的には、ハウスティンを立たせないほうがいいです.そうすれば、コードを書くのにいいタイミングです.

なぜロッカーを使うのですか?


Closerは理解が複雑すぎるので、なぜこれを書くのか気になります.結論はもちろんもっと簡単で効率的ですか?エンコードに使用します.主にコールバック内部関数に使用されます.主に工場のように関数を印刷するために使用されます.また,開発者の最大の悩みの一つは「変数名の特定」である.このような悩みを解決するために使われる.キーワードが宣言されていない場合に宣言すると、JavaScriptはグローバル変数として扱われ、エラーが発生する可能性があります.これは、これらのエラーを低減し、詳細を提供する概念です(Name Spacing).正直、この2つはあまり理解できません.関連資料を調べても、私がまだ覚えていない方法や情報がたくさんあって、理解しにくいです.やはり焦らずにゆっくり理解してください.

210131_TIL


週末は彼女と真剣に遊んで、2日分かかりました.だから前に書いたTILより簡単に書いたわけではない...

this


この曲を勉強する前にOffice Hour(全体質問時間)やReviewで「thisは難しい」「thisは理解できない」「thisはどう書いたの?」このような問題が多すぎて、私は緊張していました.私は理解するのは簡単ではありませんが、本当に難しいわけではありません.(これ以上突っ込むのは本当に難しいですが、まずは私のレベルでは…)
thisが持つ特徴をリストします
可変
呼び出し関数の脈絡
関数での使用
関数を呼び出す方法など.あります.
可変の呼び出し関数の脈絡を読み取るには,最終的には同じ文である.私たちは英語を説明するとき、「これは語義を見て、文の脈絡を見ている」という話をたくさん聞いたことがあるかもしれません.JSでは「thisの脈絡を見る」という言葉の意味も同じです.これはいつどのように呼び出すかによって決まります.
JSにはwindowというグローバルオブジェクトがあります.すべての祖先を融合させ、長老のような感じがします.では、Chromeでコンソールウィンドウを直接開いてこれを撮るとどうなりますか?ウィンドウが呼び出されます.では、対象内で呼び出すと?オブジェクトを呼び出します.その名の通り、thisが属する対象=this.
let obj = {
	num1: 1,
	num2: 2,
	plusnum: function() {
		return this.num1 + this.num2;
	},
}
console.log(obj.plusnum()) // 3
ここで、thisは自分の属する対象になりますobj!

ばらばらになる


オブジェクトは長さを求めるときobjである.lengthといえば出てこない
Object.keys(obj).lengthを書く
演算子
指定したプロパティが指定したオブジェクトに存在する場合はtrue
let arr = [1, 2, 3]
1 in arr // true
4 in arr // false

let obj = { 
	a: 1, 
	b: 2, 
	c: 3
}
'a' in obj // true
1 in obj // false
新しい演算子
オブジェクトを作成し、他の値を追加し続けるには
function whoAreYou(name, age) {
	this.name = name;
    this.age = age;
}
let myName = new whoAreYou('Jay', 18)
console.log(myName.name) //  'Jay'
コンストラクション関数で使用されるため、コンストラクション関数で生成されるインスタンスです...何なのか分からない.Googleゲームをしているうちに、私の脳は豆のような脳でも理解できるようになったので、持ってきました.
(ソース:https://victorydntmd.tistory.com/51)
new演算子は、thisを含む空のオブジェクトを作成します.propertyは空のオブジェクトの値です.
Date():現在の日付、年、および時間を出力します.
new Date().getFullYear():今は年が出ています
ただしgetFullYear()を実行するとReferenceErrorが表示されます
どうしてですか.
理由はdateobjgetFullYear()という使い方なので!