ホームページ ウェブフロントエンド jsチュートリアル JavaScriptミニマリスト入門講座(1):基礎編_JavaScriptスキル

JavaScriptミニマリスト入門講座(1):基礎編_JavaScriptスキル

May 16, 2016 pm 04:32 PM
javascript 入門チュートリアル

この記事を読むには、他の言語でのプログラミング経験が必要です。

勉強を始める前に

ほとんどのプログラミング言語には、良い部分と悪い部分があります。この記事では、JavaScript の良い部分のみを取り上げます。理由は次のとおりです。

1. 良い部分だけを学ぶことで学習時間を短縮できます
2. 書かれたコードはより堅牢になります
3. 書かれたコードがより読みやすくなります
4. 記述されたコードの保守が容易になります

弱い型付けと強い型付け

一般的に言えば、バグの修正が早ければ早いほど、コストは低くなります。厳密に型指定された言語のコンパイラーは、コンパイル時に特定のエラーをチェックできます。 JavaScript は型指定が弱い言語であり、そのインタプリタは型エラーをチェックできませんが、実際にやってみると次のことがわかります。

1. 強力な型指定で回避できるエラーは重大なエラーではありません

2. 弱い型付けは柔軟性をもたらし、強い型付けの荷物を運ぶ必要はありません

JavaScript 関連の標準

ECMA-262 標準は、ECMAScript 言語を定義します。私たちがよく知っている JavaScript と ActionScript は、どちらも ECMAScript に基づいています。現在は ECMA-262 第 5 版が主流であり、Google の V8 エンジンはこれを実装したものです。

こんにちは JavaScript

JavaScript は、解釈して実行するためにインタープリターを必要とするスクリプト言語です。ブラウザで JavaScript を解釈して実行することも、Google の V8 JavaScript エンジンを統合する Node.js を直接使用することもできます。 node.js を使うととても便利なので、ここでは、node.js を使って JavaScript を解釈して実行します。次に、最初の JavaScript プログラムを見てみましょう:


コードをコピー コードは次のとおりです:
// test.js
console.log("Hello JavaScript");

次の手順を実行します:


コードをコピー コードは次のとおりです:
ノードtest.js

文法

メモ

JavaScript は C と同じコメント メソッドを使用し、// は単一行のコメントに使用され、/* */ は複数行のコメントに使用されます。

数値型

JavaScript には、64 ビット浮動小数点数である数値型が 1 つだけあります。数値型には NaN と Infinity という 2 つの特別な値があります。NaN は数値ではないことを意味します。値 Infinity が無限であるかどうかを確認するには、関数 isNaN を使用します。 Math オブジェクトには、数値を操作するための一連のメソッドがあります。たとえば、Math.floor メソッドは切り捨てに使用されます。

文字列

文字列リテラルは、エスケープ文字を使用して一重引用符または二重引用符で囲むことができます (他の多くの言語と同様)。 JavaScript の各文字は 2 バイトであり、Unicode 文字セットを使用します。文字列には長さのプロパティがあります:

コードをコピーします コードは次のとおりです:
"Hello".length // 値は 5 ですが、"Hello".length()
ではないことに注意してください
文字列は変更できません (Lua と同じ) ここで説明した length 属性に加えて、次のようなメソッドもあります。

コードをコピーします コードは次のとおりです:
'cat'.toUpperCase() === 'CAT'


ステートメント

var ステートメントはローカル変数を宣言するために使用されます。それ以外の場合、変数はグローバル変数となり、初期化されていない変数の値は未定義になります:

コードをコピーします コードは次のとおりです:
関数 f() {
var localVar = 123;
globalVar = 456;
var i; // i の値は未定義です
};

f();

console.log(globalVar); // OK
console.log(localVar); // エラー、localVar が定義されていません


{} で囲まれたステートメントのグループはブロックと呼ばれます。他の言語とは異なり、JavaScript の関数は新しいスコープを作成しますが、ブロックは作成しません。たとえば、次のようになります。

コードをコピーします コードは次のとおりです: {
var v = 123;
}
console.log(v); // OK

if ステートメント

コードをコピーします コードは次のとおりです:

if (式)
ステートメント

または

コードをコピーします コードは次のとおりです:

if (式)
ステートメント1
それ以外
ステートメント2

または

コードをコピーします コードは次のとおりです:

if (式1)
ステートメント1
else if (式 2)
ステートメント2
else if (式 3)
ステートメント3
それ以外
ステートメント4

if ステートメントは、式の値が true か false かを判断して、特定のステートメントを実行するかスキップするかを決定します。 JavaScript では、次の値は false です (他の値はすべて true):

1.false
2.ヌル
3.未定義
4. 空の文字列
5.0
6.NaN

if 内のステートメントは、ステートメントまたはステートメント ブロックにすることができます。

switch ステートメント

コードをコピーします コードは次のとおりです:

スイッチ (n) {
case 1: // n が 1 に等しい場合
//コードブロックを実行
休憩;
ケース 2: // n が 2 に等しい場合
//コードブロックを実行
休憩;
デフォルト: // n が 1 でも 2 でもない場合
//コードブロックを実行
休憩;
}

ここでの Break は、loop ステートメントまたは switch ステートメントを終了するために使用されます。 JavaScript では、2 つの値が等しいかどうかを比較する演算子が 2 つあります:

1.== (!= 演算子に対応)、等しい、2 つのオペランドの型が異なる場合、この演算子は比較する前にオペランドの型を変換しようとします。例:

コードをコピー コードは次のとおりです:

var x = 1;
x == 1 // true
x == "1" // true
;

2.=== (!== 演算子に対応)、完全に等しく、オペランドの型変換を実行せずに 2 つのオペランドを比較します。例:

コードをコピー コードは次のとおりです:

var x = 1;
x === 1 // true
x === "1" // false
;

NaN がどの値にも等しくないことに注意してください。x が NaN の場合、x !== x (NaN の場合のみ true)、次のように isNaN 関数を実装できます。

コードをコピーします コードは次のとおりです:
関数 isNaN(n) {
n を返します !== n;
}

上記の switch ステートメントは if ステートメントに変換されます。


コードをコピー コードは次のとおりです:
if (n === 1)
// ...
else if (n === 2)
// ...
それ以外
// ...

while および do-while ステートメント

コードをコピーします コードは次のとおりです:
while (式)
ステートメント

expression が true の場合、expression が false になるまでステートメントが繰り返し実行されます。

コードをコピーします コードは次のとおりです:
する
ステートメント
while (式);

while ループと似ていますが、最初にステートメントが実行され、次に条件式がチェックされる点が異なります。

ステートメント

コードをコピーします コードは次のとおりです:

for (初期化; テスト; インクリメント)
ステートメント

最初に初期化が 1 回実行され (通常、ループ変数の初期化に使用されます)、次にテスト条件がテストされます (通常、ループ変数のテストに使用されます)。テスト条件が false の場合はループが停止され、それ以外の場合はステートメントが実行されます。次に、インクリメント (ループの更新によく使用される変数) が実行され、テスト条件テストが実行され、ループが続行されます。使用例:

コードをコピーします コードは次のとおりです:

for (var i=0; i console.log(i);
}

for の別の形式は、オブジェクトのすべてのプロパティ名を列挙するために使用されます。

コードをコピーします コードは次のとおりです:

for (オブジェクト内の変数)
ステートメント

例:

コードをコピー コードは次のとおりです:

var obj = {
a: 1、
b: 2、
c:3
};

for (obj 内の変数名)
console.log(名前);

hasOwnProperty メソッドを使用して、プロパティ名がオブジェクトに属しているか、プロトタイプ チェーンから見つかったかを確認することに注意してください (プロトタイプについては次の記事で紹介します):

コードをコピーします コードは次のとおりです:

for (obj の変数) {
If (obj.hasOwnProperty(var)) {
// ...
}
}

return ステートメント

return ステートメントは、関数が値を返すようにするために使用されます。関数が return を明示的に使用しない場合は、
が返されます。

コードをコピー コードは次のとおりです:

関数 f() { }
var v = f() // v === 未定義

?: 条件演算子 (JavaScript の唯一の三項演算子)
?: 条件演算子は多くのプログラミング言語に存在します。最初のオペランドが true の場合、演算子は 2 番目のオペランドの値を返し、そうでない場合は 3 番目のオペランドの値を返します。

コードをコピーします コードは次のとおりです:
関数 abs() {
x > 0 ? を返す: -x;
}

演算子の種類

typeof 演算子は変数の型を取得するために使用され、その戻り値には次のものが含まれます。

1.'番号'

2.'文字列'
3.'ブール値'
4.「未定義」
5.「関数」
6.「オブジェクト」

特殊な typeof null は「object」を返します。 typeof の例:

コードをコピーします コードは次のとおりです:
var a = typeof 'hello' // a === '文字列'
; var b = null のタイプ // b === 'オブジェクト'

オペレーター

演算子は、JavaScript での加算演算に使用でき、文字列の連結にも使用できます:


コードをコピー コードは次のとおりです:
var message = 'hello' 'world' // メッセージ === 'helloworld'
;

&& および || 演算子

&& 演算子は、最初のオペランドが false の場合は最初のオペランドの値を返し、それ以外の場合は 2 番目のオペランドの値を返します
|| 演算子は、最初のオペランドが true の場合は最初のオペランドの値を返し、それ以外の場合は 2 番目のオペランドの値を返します

コードをコピーします コードは次のとおりです:

var a = 1 && true // a === true
var b = 1 || // b === 1

|| の慣用的な使用法:

コードをコピー コードは次のとおりです:

name = name || 'unknown' // 名前 'unknown' のデフォルト値を設定します
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

WebSocket と JavaScript を使用してオンライン音声認識システムを実装する方法 WebSocket と JavaScript を使用してオンライン音声認識システムを実装する方法 Dec 17, 2023 pm 02:54 PM

WebSocket と JavaScript を使用してオンライン音声認識システムを実装する方法 はじめに: 技術の継続的な発展により、音声認識技術は人工知能の分野の重要な部分になりました。 WebSocket と JavaScript をベースとしたオンライン音声認識システムは、低遅延、リアルタイム、クロスプラットフォームという特徴があり、広く使用されるソリューションとなっています。この記事では、WebSocket と JavaScript を使用してオンライン音声認識システムを実装する方法を紹介します。

WebSocket と JavaScript: リアルタイム監視システムを実装するための主要テクノロジー WebSocket と JavaScript: リアルタイム監視システムを実装するための主要テクノロジー Dec 17, 2023 pm 05:30 PM

WebSocketとJavaScript:リアルタイム監視システムを実現するためのキーテクノロジー はじめに: インターネット技術の急速な発展に伴い、リアルタイム監視システムは様々な分野で広く利用されています。リアルタイム監視を実現するための重要なテクノロジーの 1 つは、WebSocket と JavaScript の組み合わせです。この記事では、リアルタイム監視システムにおける WebSocket と JavaScript のアプリケーションを紹介し、コード例を示し、その実装原理を詳しく説明します。 1.WebSocketテクノロジー

WebSocketとJavaScriptを使ったオンライン予約システムの実装方法 WebSocketとJavaScriptを使ったオンライン予約システムの実装方法 Dec 17, 2023 am 09:39 AM

WebSocket と JavaScript を使用してオンライン予約システムを実装する方法 今日のデジタル時代では、ますます多くの企業やサービスがオンライン予約機能を提供する必要があります。効率的かつリアルタイムのオンライン予約システムを実装することが重要です。この記事では、WebSocket と JavaScript を使用してオンライン予約システムを実装する方法と、具体的なコード例を紹介します。 1. WebSocket とは何ですか? WebSocket は、単一の TCP 接続における全二重方式です。

初心者ガイド: ゼロから始めて、MyBatis を段階的に学習します 初心者ガイド: ゼロから始めて、MyBatis を段階的に学習します Feb 19, 2024 am 11:05 AM

簡潔でわかりやすい MyBatis 入門チュートリアル: 最初のプログラムをステップバイステップで作成する MyBatis は、データベースとの対話プロセスを簡素化する人気のある Java 永続層フレームワークです。このチュートリアルでは、MyBatis を使用して簡単なデータベース操作を作成および実行する方法を説明します。ステップ 1: 環境セットアップ まず、Java 開発環境がインストールされていることを確認します。次に、MyBatis の最新バージョンをダウンロードし、Java プロジェクトに追加します。 MyBatisの公式Webサイトからダウンロードできます。

JavaScript と WebSocket を使用してリアルタイムのオンライン注文システムを実装する方法 JavaScript と WebSocket を使用してリアルタイムのオンライン注文システムを実装する方法 Dec 17, 2023 pm 12:09 PM

JavaScript と WebSocket を使用してリアルタイム オンライン注文システムを実装する方法の紹介: インターネットの普及とテクノロジーの進歩に伴い、ますます多くのレストランがオンライン注文サービスを提供し始めています。リアルタイムのオンライン注文システムを実装するには、JavaScript と WebSocket テクノロジを使用できます。 WebSocket は、TCP プロトコルをベースとした全二重通信プロトコルで、クライアントとサーバー間のリアルタイム双方向通信を実現します。リアルタイムオンラインオーダーシステムにおいて、ユーザーが料理を選択して注文するとき

JavaScript と WebSocket: 効率的なリアルタイム天気予報システムの構築 JavaScript と WebSocket: 効率的なリアルタイム天気予報システムの構築 Dec 17, 2023 pm 05:13 PM

JavaScript と WebSocket: 効率的なリアルタイム天気予報システムの構築 はじめに: 今日、天気予報の精度は日常生活と意思決定にとって非常に重要です。テクノロジーの発展に伴い、リアルタイムで気象データを取得することで、より正確で信頼性の高い天気予報を提供できるようになりました。この記事では、JavaScript と WebSocket テクノロジを使用して効率的なリアルタイム天気予報システムを構築する方法を学びます。この記事では、具体的なコード例を通じて実装プロセスを説明します。私たちは

簡単な JavaScript チュートリアル: HTTP ステータス コードを取得する方法 簡単な JavaScript チュートリアル: HTTP ステータス コードを取得する方法 Jan 05, 2024 pm 06:08 PM

JavaScript チュートリアル: HTTP ステータス コードを取得する方法、特定のコード例が必要です 序文: Web 開発では、サーバーとのデータ対話が頻繁に発生します。サーバーと通信するとき、多くの場合、返された HTTP ステータス コードを取得して操作が成功したかどうかを判断し、さまざまなステータス コードに基づいて対応する処理を実行する必要があります。この記事では、JavaScript を使用して HTTP ステータス コードを取得する方法を説明し、いくつかの実用的なコード例を示します。 XMLHttpRequestの使用

JavaScriptでinsertBeforeを使用する方法 JavaScriptでinsertBeforeを使用する方法 Nov 24, 2023 am 11:56 AM

使用法: JavaScript では、insertBefore() メソッドを使用して、DOM ツリーに新しいノードを挿入します。このメソッドには、挿入される新しいノードと参照ノード (つまり、新しいノードが挿入されるノード) の 2 つのパラメータが必要です。

See all articles