JavaScriptはインターネット上で悪い評判を持っていますが、それがとてもダイナミックで、広く使用されていて、私たちの生活に根ざしているような別の言語を見つけることは困難です。その低い学習しきい値により、多くの人々がそれを幼稚園のスクリプト言語と呼びました。人々を笑わせるもう1つのことは、静的データ型の高い標準を使用する動的言語の概念です。実際、あなたとJavaScriptの両方が間違った位置を占めており、今ではJavaScriptを非常に怒らせています。 JavaScriptテクノロジーがひどい5つの理由を以下に示します。
1.名前空間を使用していません。
大学の教師は、宿題にグローバル変数を使用しないように言ったことをまだ覚えていますか? JavaScriptのグローバル変数の使用も例外ではありません。注意していない場合は、混oticとし、インターネットの隅々から乱雑なスクリプトとスクリプトライブラリがあります。可変ローダー()に名前を付けると、故意にトラブルを引き起こしています。無意識のうちに関数を過負荷にした場合、JavaScriptはまったく思い出させません。また、幼稚園のプログラミング言語と呼んでいます。覚えていますか?私が言いたいのは、これをした後に何が起こるかを知る必要があるということです。
コードコピーは次のとおりです。
function derp(){alert( "one"); }
function derp(){alert( "2"); }
derp();
「2」、答えは「2」です。必ずしもそうではなく、「1つ」である可能性があります。したがって、すべてのコードを自分の名前空間に簡単に配置するのは簡単です。自分の名前空間を定義する簡単な方法を次に示します。
コードコピーは次のとおりです。
var foospace = {};
foospace.derp = function(){alert( "one"); }
function derp(){alert( "2"); }
foospace.derp();
2。トリックを作成しており、変数を1つずつ定義します。
数字の不可解な組み合わせを変数名として使用することは、負けの終わりです。 40ラインのコードブロックで意味のない文字変数を探すことは、メンテナンスの悪夢です。変数の最初の宣言を40行のコードブロックに混ぜることも悪夢です。このような変数に遭遇した場合でも、「これはどこにあるのか」と自問するしかありません。Ctrl+Fの組み合わせをすばやく使用して、ソースコードのこの変数の初期定義を見つけます。いいえ、これをしないでください、それどころか、それはJavaScriptの乱用であり、愚かなアプローチです。使用範囲の最上部に変数を常に定義する必要があります。これは必要ではないので、そうすることはできません。
コードコピーは次のとおりです。
関数(){
var a、//説明
b; //説明
//プロセス…
}
3. JavaScriptの可変スコープを理解していません。
あなたは天才プログラマーであり、C ++を食べてプルリストを食べます。変数の範囲が何であるかを知っており、変数を完全に制御し、最高皇帝のようにそれらを見ています。しかし、JavaScriptはあなたのコーヒーにたわごとを引っ張り、際限なく笑います。
コードコピーは次のとおりです。
var herp =” one”;
{
var herp =” two”;
}
アラート(HERP);
この場合、HERPは「1」ではなく「2」です。 JavaScriptの変数有効範囲は、他の言語のようなコードブロックに依存しません。 JavaScript変数範囲は、関数に基づいています。各機能には独自の可変範囲があり、JavaScriptはこのようにクールで、意味のないブレースに包まれたスコープを無視します。実際、JavaScriptは非常にクールであるため、名前空間や変数などの可変スコープを渡すこともできます。
4. JavaScriptのオブジェクト指向の特徴は接ぎ木されているだけだと思います。
JavaScriptは、その創業以来、オブジェクト指向の言語でした。すべてがJavaScriptのオブジェクトです。数字や文字などの文字通りのシンボルでさえ、独自の固有のコンストラクターを介してオブジェクトに変換できます。他のオブジェクト指向言語と比較して、JavaScriptはクラスがないという点で異なります。 JavaScriptオブジェクトは関数のように定義されており、関数自体でさえオブジェクトです。 JavaScriptには、プロトタイプと呼ばれるプロパティがあります。このプロパティはすべてのオブジェクトに組み込まれています。オブジェクトの構築を変更し、オブジェクトを変更し、より多くの変数を追加し、より多くの関数を追加できます。
コードコピーは次のとおりです。
var derp; // HERPインスタンスを保持します
var herp = function(){
this.opinion =” javascriptは基本よりもクールです。」;
}
herp.prototype.speak = function(){alert(this.opinion); }
var derp = new Herp();
derp.speak();
これがあなたとは何の関係もないように思われる場合は、私の親友のGoogleをあなたに紹介したいと思います。これは、人々が知識を学ぶのを助けるのが得意です。オブジェクト指向は、私の短くて低いスタンスの記事にとって大きなトピックです。
5.「新しい」キーワードを使用する場合、それは盲人と盲目の馬のようなものです。
JavaScriptは、あなたが途方に暮れているように見えるので、あなたの最初の愛のガールフレンドでなければなりません。 JavaScriptを実在の人物のように喜ばせたい場合は、オブジェクトシンボルを理解する必要があります。基本的に、オブジェクトをインスタンス化する必要がある場合、またはデータが遅延された方法でロードされる場合を除き、新しいキーワードを使用する必要はありません。 JavaScriptに多数の新しい変数アドレスを割り当てることは非常に遅い操作です。効率的な理由から、常にオブジェクトシンボルを使用する必要があります。
コードコピーは次のとおりです。
var rightway = [1、2、3];
var誤解= new Array(1、2、3);
JavaScriptの可変範囲は関数に基づいていると言ったことを覚えていますか? JavaScriptオブジェクトは関数のように定義されていると言った人を覚えていますか?新しいキーワードを使用してオブジェクトを宣言しない場合、このオブジェクトをグローバルな範囲にします。したがって、新しいキーワードを常に使用してオブジェクトを宣言することは良い習慣です。
コードコピーは次のとおりです。
var derp =” one”;
var herp = function(){
this.derp =” two”;
}
var foo = herp();
アラート(derp);
このように書くと、JavaScriptは気にしません。そして、あなたが本当にポップアップする答えは「2」です!オブジェクトがそのような動作を行うのを防ぐには多くの方法がありますが、これはInstanceOFを使用するために使用できますが、より良い方法は、新しいキーワードを正しく使用することで、よりプロフェッショナルになります。
これで、JavaScriptコードがひどいことがわかりました。上記のことを覚えていれば、コードが改善されます。コードをインデントするために3つのタブキーを使用するのが好きです。アンダースコアを使用して単語を接続するのが好きです。関数の最初の文字を大文字にして、それがオブジェクトであることを示すのが好きです。もちろん、これは別の議論です。あなたのJavaScriptコードが悪い理由はたくさんあります。私が多くのスキルを持っているように、私はあなたの意見、サポート、異議を表明し、コメントでいくつかのアドバイスを与えることができます。
ポイント5のエラーを指摘してくれたRogeliorvとJared Weinに感謝します。あなたは非常に強いです。