JavaScriptと種類を理解するJavaScriptと種類を理解する
問題はあなたが実際には、JavaScriptの宣言型のすべての変数を持っていないの種類、その変数理論のJavaScriptコードを宣言していない回避するためにします。指定された変数の不足するときに関数を宣言する明白である。これは、JavaScriptの型や型の安全性を有することを意味しません指定された変数の宣言がないと述べた。の機能の簡単な宣言では、次の例で説明を始めましょう。 ソース: /サイト/ルート/ ajaxrecipes / javascriptに/ expectations.html関数AddTwoNumbers(num1、num2)(戻りnum1 + num2;)) AddTwoNumbers関数は2つのパラメータを、num1とnum2があり、2つの個別の数値を表します。 AddTwoNumbersの実装では、2つの番号を一緒に追加され、値が返されます。を宣言し、関数を使用するこの方法では、他のプログラミング言語で共通です。と数字num1追加num2として呼び出し側に返される結果は次のとおり:assertEquals(4、AddTwoNumbers(2、2)); assertEquals機能するために使用されてそのときにAddTwoNumbers 2と2と呼ばれ、4の結果として生成される機能を確認します。ときに、コードを実行すると、すべてのが、感じることができる保証は、すべてが正しいことを期待どおりに動作? ため、いくつかの誤解を招く仮定がなされている答えはありません、あなた、安心していることはできません。AddTwoNumbers関数は2つの数字を宣言すると仮定しnum1とnum2数字は合理的ではありません。 JavaScriptでは、変数を入力しないと宣言した。 1回のタイプに割り当てられた変数の型は安全ですが、入力されるまで変数に代入されますが何であるかを知っていないため、この関数を尊重し、num2知られていないタイプのnum1と。ソリューション安全な方法でAddTwoNumbers実装するために次のとおりです。 ソース: /サイト/ルート/ ajaxrecipes / javascriptに/ expectations.html関数AddTwoNumbersDisplayTypes(num1、num2)(ヴァールはval1 = parseInt(num1);ヴァールval2 = parseInt(num2);場合(isNaN(はval1)| | isNaN(val2))(スローは、新しいError("num1、(および/または)num2も数値や文字列")されます;)情報("AddTwoNumbersDisplayTypes"、typeof演算(num1));("AddTwoNumbersDisplayTypes"、typeof演算(num2));戻りはval1 +情報をもっと見るval2;) 変更の実装では、数値に文字列を変換するために使用されているparseIntメソッドを、両方のnum1とnum2に適用されます。 parseIntの結果はとnum1ことができますnum2一緒に追加される整数値です。 num1とnum2のパラメータ番号は、isNaN演算子を使用することが検証されます。 isNaNの戻り値は、trueまたはfalseの値です。値がfalseを返す場合、いずれかの場合、num1、またはnum2番号とされていない例外がスローされます。この変更の実装では、それはほとんど間違って行くことと思われる。2つの数値を追加実装を見て、不思議がどのようにJavaScriptのような動的な言語を使用する利点は、他のプログラミング言語を超えています。 コードを追加するかどうかではなく、適切な型の場合、そのロジックの並べ替えのすべての機能を実装されて退屈になる使用されていることを確認するために使用。 JavaやCなどの他のプログラミング言語では#、2つの番号を一緒に安全に追加する完全には簡単です。を付与した場合の数値計算の多くを実行するつもりですし、JavaScriptは最も適切なプログラミング言語はおそらくされていません。しかし、ときに何かを成し遂げたを取得するアプリケーションを記述する必要があり、どのタイプのものは、JavaScriptが適していますが、低レベルの詳細を回避台無しにしたくない。変更後のソースコードを書くの例では防御的なものこれはお勧めのコードは、しかし、遠くを取っていないし、それを妄想してみましょう。あなたは、それが何を考えていないコードをしたいときには、他の言葉で明示的なエラーを生成する必要がない場合は、そのときにエラーが発生する悲鳴コードします。コードでは、キャプチャは悲鳴を上げる、それを何とかしなければならないとき関数を書くのは、客観的実装を記述することです守備のコードは、関数の期待に適切なています。 、JavaScriptが、期待と慣習などの動的言語でコードを書くことは非常に重要な役割を果たす。とき#やJava、プログラマはすべての状況では動作し、動作しません。したがって、我々の期待を実装し、規則を使用する当社の付加機能書き換えてみようを考慮して期待されてこのようなC言語をプログラミング言語を使用してコードを記述する。最初のステップは、テストを記述すると考えるが何であるか、適切ではありません。次の実装は我々の期待を反映します。 ソース: /サイト/ルート/ ajaxrecipes / javascriptに/ expectations.html classical_add_display_types:関数()(assertEquals(4、AddTwoNumbersDisplayTypes(2、2)); assertEquals(4、AddTwoNumbersDisplayTypes("2"、2));(AddTwoNumbersDisplayTypesしてください(新しいオブジェクト()、2); testManager.failed();を返す;)(電子)(情報("classical_add_display_types"、"期待されるエラーをキャッチ("+ e.toString()+ ")");)testManager.success(); )、 最初の2つのassertEqualsメソッドを呼び出しての期待が我々のいずれかの文字列または数値の値は番号を追加する可能性が反映されます。なぜなら、通常一緒に2つの番号を追加する2つの数値の値を追加の期待は明らかである。の期待を2つのバッファを認識するので、HTMLフォームHTML形式でフォーム要素を扱っている数値として適切であることがされて、バッファとして、その値を格納します。ですから、数学的な操作のHTMLフォーム要素からデータを使用して実行すると、我々は数式を数値にバッファからの変換を処理することを期待した後で、メソッドが我々の期待のテスト実装を呼び出すと、例外ブロック内のコードは私たちには期待する何かを実装する働く。 オブジェクトは、ここでは、オブジェクトのプロパティを参照する可能性番号を加えて呼び出すと我々はまた、関数を理解を期待するものではありません。ここでは、エラーが生成されることを期待する。が、仕事には、少なくとも失敗すると予想されることが期待されていないコードは、例外ブロック内にラップされます。期待の役割の両方の機能と関数の呼び出しでは、などの例に示す必要があります。JavaScriptでは、関数は、特定の期待に応える必要がありますので、下記の点に書き込まずを観察する必要があります: •変数の型を使用して宣言されているときに、変数は型を持たないと見なされます割り当てられていない。 •一度変数を見ると、割り当てられて感じて、型のように振る舞う。 •時の機能を実装する場合は、期待を実装するコードのブロックを書いている。 適切に期待に応えるために•場合、テストを記述する必要があります。 •時の期待が満たされない場合、エラーとその付随するメッセージを説明する必要があります明らかにする必要があります。 •場合、変数は、typeof演算を使用するタイプは何を確認したい。単純なオブジェクト、またはチェックを使用しないでください。 •時の期待を実装する、妄想することはありませんし、しようとするすべての変数は、すべてのパラメータの正確な詳細を確認することによって、型システムを作成します。 記事は、ソニアLandeを提出 免責事項:弊社のウェブサイトは、この資料の内容については責任を負いません。 Webarticles無料の情報リソースです。 重要: この記事は、""JavaScriptと種類を理解する自動ソフトウェアによって翻訳された。大変申し訳ございませんが発生した可能性があります任意のスペルミスを感じている。お客様のご理解いただき、ありがとうございます。
|
|||||
| Online: 250 users browsing the articles directory |
|
|