第6章データ型
JavaScriptのデータ型には、7種類の元のタイプ(number、string、boolean、undefined、null、symbol)とオブジェクトタイプがあります。
6.1数値タイプ
「数値タイプの値は、分配密度64ビットの浮動小数点フォーマットに従います.」
=>すべての数量を誤って処理します.
=>バイナリ、8進数、16進数の文字はすべて10進数と理解できます.
var binary = 0b01000001;
var octal = 0o101;
var hex = 0x41;
console.log(binary); // 65
console.log(octal); // 65
console.log(hex); // 65
また、Infinity
、-Infinity
、NaN
の3つの特殊値を表すこともできる.console.log(1 / 0); // Infinity
console.log(-1 / 0); // -Infinity
console.log(5 * 'hello'); // NaN
6.2文字列タイプ
UTF-16の集合は大部分の文字を表すことができる.
JavaScriptの文字列は元のタイプで、可変値です.
str = '작은따옴표 안에 "큰따옴표" 사용가능';
str2 = "큰따옴표 안에 '작은따옴표' 사용가능"; //
str3 = `백틱을 사용한 문자열의 기능은 밑에서 계속...`; // ES6
6.3テンプレート文字
テンプレートライブラリには、複数行の文字列、挿入式、タグテンプレートなどの文字列処理機能があり、backticを使用して表示されます.
var old_str = '<ul>\n\t<li>일반 문자열<li>\n</ul>';
var template_literal = `<ul>
<li>템플릿 리터럴</li>
</ul>`;
エスケープシーケンスの意味0 Nullb backspacefフォーム入力n単一行r単一行tラベル(水平)vラベル(垂直)uXXX Unicode'単引用符逆スラッシュハーネスとリターン 過去のタイプライターからカーソルを制御する方式で、LFはカーソルを現在位置から1行下げ、CRはカーソルを一番前に送る。 現在、異なるオペレーティングシステムには異なる開行方式があります。WindowsはCR+LF、UnixはLF、MacOS(バージョン10以降)はLFを使用します。ほとんどのテキストエディタでは、オペレーティングシステムのテキストが自動的に変換されます。Javascriptでは、通常LFで始まります。
var name = '홍길동';
var age = '18';
console.log(`반갑습니다! ${name}님의 ${age}번째 생일을 축하합니다!`);
// 반갑습니다! 홍길동님의 18번째 생일을 축하합니다!
console.log(`3 + 16 = ${3 + 16}`); // 3 + 6 = 19
6.4ブールタイプ
ブールタイプにはtrueとfalseの2つの値しかありません.
6.5未定義タイプ
値を指定せずにvarキーワードで変数を宣言する場合、デフォルトは
undefined
に初期化されます.宣言と定義 Cのような場合、宣言と正義の区別は非常に厳しい。コンパイラが識別子の存在のみを通知する場合は宣言、変数を作成してメモリアドレスに関連付ける場合は区切りを定義します。 JAvascriptのundefinedは「未定義」状態ですが、変数を宣言するとデフォルトで定義され、宣言と定義の区別が曖昧になります。ESMAScript仕様では、変数は「宣言」、関数は「定義」です。
6.6空のタイプ
null
は、意図的に無価であることを示すために使用される.変数にnull
を割り当てると、以前の参照値が明示的に削除されることを意味します.関数が有効な値を返さなくてもnullは明示的に返されます.例えば、条件を満たす要因がない場合、
document.querySelector
メソッドはnull
を返す.6.7シンボルタイプ
シンボルはES 6に追加されたタイプで、変更できない元のタイプ値です.
Symbol関数を呼び出して生成されるシンボル値は、外部に露出せず、他の値と重複しない唯一の値です.
6.8オブジェクトタイプ
JavaScriptのデータ型は、元のタイプとオブジェクトのタイプに大きく分けられます.上記の元のタイプを除き、すべての値がオブジェクトタイプです.
6.10ダイナミックタイプ
典型的な静的言語:C、C++、Java、C#、Kotlin、Haskell、Rust、Scalaなど
動的タイプ(dynamic/weaktype)言語は、変数に任意のデータ型値を自由に割り当てることができます.タイプは、変数によって宣言されるのではなく、割り当て(タイプ推定、タイプ推定)によって決定されてもよいし、再割り当てによって動的に変更されてもよい(ダイナミックタイプ、ダイナミックタイプ).
典型的なダイナミックタイプ言語:JavaScript、Python、PHP、Ruby、Lisp、Perlなど
- 변수는 꼭 필요한 경우에 한해 제한적으로 사용한다.
- 변수의 스코프(유효 범위)는 최대한 좁게 만들어 변수의 부작용을 억제해야 한다.
- 전역 변수는 최대한 사용하지 않도록 한다.
- 변수보다는 상수를 사용해 값의 변경을 억제한다.
- 변수 이름은 변수의 목적이나 의미를 파악할 수 있도록 네이밍한다.
可読性の良いコードは良いコードです.これは李雄模の「モダンjavascript Deep Dive」という本で、学習過程で学んだ内容をまとめてアップロードした文章です。もっと詳しい内容を知りたい方は本を読んでください
Reference
この問題について(第6章データ型), 我々は、より多くの情報をここで見つけました https://velog.io/@inhalin/mjs-ch06テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol