基本タイプを活字体

補うための基礎脳

JavaScriptでは二つのタイプに分け:

  • プリミティブデータ型(プリミティブデータ型)
  • オブジェクトタイプ(オブジェクト型)

ここで、元のデータ型は:ブール値、数値、文字列、ヌル、未定義とのES6新しいタイプのシンボルをこの章選択話すにおけるヌル以前の5種類があります。

ブール値

それは、その値は、最も基本的なデータ型ですtrue/falseJavaScriptと活字体で使用中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:それは価値だろうnullundefined何が位置を変更することが起こるのだろうか?

// 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サブタイプ(缶のすべてのタイプnullundefinedに割り当てられ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:voidstringnumberboolean)の関係は何ですか?

// 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';
复制代码

要約の下では、できるだけでundefinednullとに割り当てられた機能の戻り値なしvoid(ヌル)を入力します。

コードのGithub

あなたはできる

前:活字体成長環境

次へ:任意の値を活字体

ます。https://juejin.im/post/5d0b9e1f51882531fc431d60で再現

おすすめ

転載: blog.csdn.net/weixin_33670786/article/details/93173970