補うための基礎脳
JavaScriptでは二つのタイプに分け:
- プリミティブデータ型(プリミティブデータ型)
- オブジェクトタイプ(オブジェクト型)
ここで、元のデータ型は:ブール値、数値、文字列、ヌル、未定義とのES6新しいタイプのシンボルを。この章選択話すにおけるヌル以前の5種類があります。
ブール値
それは、その値は、最も基本的なデータ型ですtrue/false
。JavaScriptと活字体で使用中boolean
(あまりにも、他の言語で)定義されています。
// boolean.ts
let isDone: boolean = false;
复制代码
コンパイル(tsc boolean.ts
後)
// boolean.js
var isDone = false;
复制代码
Q:コンストラクタは
Boolean
それができ作成するには?そのようなものとして
// boolean2.ts
let isDoneByNewBoolean: boolean = new Boolean(1);
复制代码
コンパイラ(編集者)前
コンパイルされました
問題は、あるnew Boolean(1)
オブジェクトを返します。
掲載:直接使用
Boolean(1)
何を?
// boolean3.ts
let isDoneByBoolean: boolean = Boolean(1);
复制代码
コンパイルされました
// boolean3.js
var isDoneByBoolean = Boolean(1);
复制代码
Boolean(1)
これは、ブール値を返します。
デジタル
そして、すべての数字は小数点型を浮遊しているJavaScriptの、活字体のようなnumber
。
// number.ts
let decLiteral: number = 6;
let hexLiteral: number = 0xf00d;
let binaryLiteral: number = 0b1010; // ES6 中的二进制表示法
let octalLiteral: number = 0o744; // ES6 中的八进制表示法
let notANumber: number = NaN;
let infinityNumber: number = Infinity;
复制代码
コンパイルされました
// number.ts
var decLiteral = 6;
var hexLiteral = 0xf00d;
var binaryLiteral = 10; // ES6 中的二进制表示法
var octalLiteral = 484; // ES6 中的八进制表示法
var notANumber = NaN;
var infinityNumber = Infinity;
复制代码
弦
そして、JavaScriptの使用string
タイプを表すテキストデータ、使用することができます**二重引用符(「)または単一引用符(「)**は、文字列を示します。
// string.ts
let str: string = 'Typescript';
let say: string = `Hello, ${str}`;
复制代码
コンパイルされました
// string.js
var str = 'Typescript';
var say = "Hello, " + str;
复制代码
未定義の和はnull
世界では活字体、null
およびundefined
独自のデータ型を定義するために使用することができます。しかし、それは本ではありません。
// null-undefined.ts
let u: undefined = undefined;
let n: null = null;
复制代码
コンパイルされました
// null-undefined.js
var u = undefined;
var n = null;
复制代码
Q:それは価値だろう
null
とundefined
何が位置を変更することが起こるのだろうか?
// null-undefined2.ts
let u: undefined = null;
let n: null = undefined;
复制代码
コンパイルされました
// null-undefined2.js
var u = null;
var n = undefined;
复制代码
Q:では、このような何かが起こりますか?
// null-undefined3.ts
let nu: number = undefined;
let nn: number = null;
let su: string = undefined;
let sn: string = null;
let bu: boolean = undefined;
let bn: boolean = null;
复制代码
コンパイルされました
// null-undefined3.js
var nu = undefined;
var nn = null;
var su = undefined;
var sn = null;
var bu = undefined;
var bn = null;
复制代码
上記3つの実施例から、それが実質的に決定することができる、null
およびundefined
サブタイプ(缶のすべてのタイプnull
とundefined
に割り当てられnumber
た変数の他のすべてのタイプ、あまり意味が割り当てられています)。
ヌル
JavaScriptの世界ではないがnullの概念が、活字体では、あなたが使用することができvoid
ていない関数の戻り値ことを示しています。
// void.ts
function sayTs(): void {
console.log('Hello, Typescript');
}
function sayTs2(): void {
return 'Hello, Typescript';
}
复制代码
コンパイルの前に
コンパイルされました
しかし、まだ出てコンパイル
// void.js
function sayTs() {
console.log('Hello, Typescript');
}
function sayTs2() {
return 'Hello, Typescript2';
}
复制代码
Q:
void
とのnull
(あるいはundefined
どのような関係)との間に?
// void2.ts
let u: void = undefined;
let n: void = null;
复制代码
コンパイルされました
// void2.js
var u = undefined;
var n = null;
复制代码
Q:
void
とstring
(number
、boolean
)の関係は何ですか?
// void3.ts
let n: void = 1;
let b: void = false;
let s: void = '1';
复制代码
コンパイルの前に
コンパイルされました
しかし、まだ出てコンパイル
// void3.js
var vn = 1;
var vb = false;
var vs = '1';
复制代码
要約の下では、できるだけでundefined
、null
とに割り当てられた機能の戻り値なしvoid
(ヌル)を入力します。
あなたはできる
次へ:任意の値を活字体
ます。https://juejin.im/post/5d0b9e1f51882531fc431d60で再現