誰もが知っているように、JavaScriptは非常に人気のあるプログラミング言語です。開発者はそれを使用して、まばゆいばかりのWebプログラムを開発するだけでなく、いくつかのモバイルアプリケーション(PhoneGapやAppceleratorなど)を開発することもできます。また、Nodejs、Wakanda、その他の実装など、いくつかのサーバー実装もあります。さらに、多くの開発者はJavaScriptを入門言語として選択し、それを使用してポップアップなどの小さなものを作成します。
この記事では、著者は、JavaScript開発の小さなヒント、ベストプラクティス、その他の非常に実用的なコンテンツを共有します。あなたがフロントエンド開発者であろうとサーバー開発者であろうと、これらの小さなヒントを見る必要があります。彼らは間違いなくあなたに利益をもたらします。
この記事で提供されるコードスニペットは、V8 JavaScriptエンジン(V8 3.20.17.15)を使用するChrome 30の最新バージョンでテストされています。
1.最初に変数に値を割り当てるときは、varキーワードを忘れないでください
宣言されていない変数に値を割り当てます。これは、グローバル変数として自動的に作成されます。 JS開発では、グローバル変数を避ける必要があります。
2。use === fate ==
そして、決して使用しないでください=または! =。
コードコピーは次のとおりです。
[10] === 10 //はfalseです
[10] == 10 //は真です
'10' == 10 //は本当です
'10' === 10 //はfalseです
[] == 0 //は本当です
[] === 0 //はfalseです
'== false //はtrueですが、true == "a"はfalseです
'=== false //はfalseです
3.セミコロンをラインターミネーターとして使用します
ラインが終了するセミコロンを使用するのは良い習慣であり、開発者がセミコロンを追加するのを忘れたとしても、ほとんどの場合、JavaScriptパーサーが自動的に追加するため、コンパイラにはヒントがありません。
4.コンストラクターを作成します
コードコピーは次のとおりです。
function person(firstName、lastName){
this.firstname = firstName;
this.lastname = lastname;
}
var saad = new person( "saad"、 "mousliki");
5. TYPEOF、InstanceOF、およびコンストラクターを使用するように注意してください
コードコピーは次のとおりです。
var arr = ["a"、 "b"、 "c"];
typeof arr; //「オブジェクト」を返します
arr instanceof array // true
arr.constructor(); // []
6.セルフコール関数を作成します
これは、多くの場合、セルフコール匿名関数または即時コール関数式(LLFE)と呼ばれます。関数が作成されると、次のように自動的に実行されます。
コードコピーは次のとおりです。
(関数(){
//自動的に実行されるいくつかのプライベートコード
})();
(function(a、b){
var result = a+b;
返品結果;
})(10,20)
7.配列のランダムアイテムを作成します
コードコピーは次のとおりです。
var items = [12、548、 'a'、2、5478、 'foo'、8852、 'doe'、2145、119];
var randomItem = items [math.floor(math.random() * items.length)];
8。特定の範囲で乱数を取得します
次のコードは非常に一般的です。テスト用の偽のデータを生成する必要がある場合、最低賃金と最大の前にランダムな値を取得するなどです。
コードコピーは次のとおりです。
var x = math.floor(math.random() *(max -min + 1)) + min;
9.数0と最大数の間に乱数のセットを生成します
コードコピーは次のとおりです。
var NumbersArray = []、max = 100;
for(var i = 1; numbersarray.push(i ++)<max;); //番号= [0,1,2,3 ... 100]
10。英数字のランダムセットを生成します
コードコピーは次のとおりです。
関数generaterandomalphanum(len){
var rdmstring = "";
for(; rdmstring.length <len; rdmstring += math.random()。toString(36).substr(2));
RDMSTRING.SUBSTR(0、LEN)を返します。
}
11.数字の配列を破壊します
コードコピーは次のとおりです。
var番号= [5、458、120、-215、228、400、122205、-85411];
numbers = numbers.sort(function(){return math.random() - 0.5});
/ *たとえば、配列番号は[120、5、228、-215、400、458、-85411、122205]に等しくなります */
12。文字列ティム関数
TRIM関数は、文字列のWhitespace文字を削除でき、Java、C#、PHPなどの複数の言語で使用できます。
コードコピーは次のとおりです。
string.prototype.trim = function(){return this.replace(/^/s+|/s+$/g、 "");};
13.Array Appent
コードコピーは次のとおりです。
var array1 = [12、 "foo"、{name "Joe"}、-2458];
var array2 = ["doe"、555、100];
array.prototype.push.apply(array1、array2);
/ * array1は[12、 "foo"、{name "joe"}、-2458、 "doe"、555、100]に等しくなります */
14。パラメーターオブジェクトを配列に変換します
コードコピーは次のとおりです。
var argarray = array.prototype.slice.call(arguments);
15.特定のパラメーターが数字であるかどうかを確認します
コードコピーは次のとおりです。
関数isNumber(n){
return!isnan(parsefloat(n))&& isfinite(n);
}
16.特定のパラメーターが配列であることを確認します
コードコピーは次のとおりです。
関数isArray(obj){
return object.prototype.tostring.call(obj)=== '[object array]';
}
toString()メソッドが書き換えられた場合、期待される結果は得られないことに注意してください。
またはあなたはこれを書くことができます:
コードコピーは次のとおりです。
array.isarray(obj); //その新しい配列メソッド
同様に、複数のフレームを使用する場合は、インスタンスを使用できます。コンテンツが多すぎると、結果もエラーになります。
コードコピーは次のとおりです。
var myframe = document.createelement( 'iframe');
document.body.appendChild(myframe);
var myarray = window.frames [window.frames.length-1] .array;
var arr = new MyArray(A、B、10); // [A、B、10]
//インスタンスのインスタンスは正しく機能しません、MyArrayは彼のコンストラクターを失います
//コンストラクターはフレーム間で共有されません
arrのinstance of array; // 間違い
17。数字の配列から最大値と最小値を取得します
コードコピーは次のとおりです。
var番号= [5、458、120、-215、228、400、122205、-85411];
var maxinnumbers = math.max.apply(math、numbers);
var mininnumbers = Math.min.Apply(Math、Numbers);
18.配列をクリアします
コードコピーは次のとおりです。
var myArray = [12、222、1000];
myarray.length = 0; // myArrayは[]に等しくなります。
19.配列からアイテムを削除するためにdeleteを使用しないでください
開発者は、deleteを使用して配列アイテムを削除する代わりに、splitを使用できます。アレイ内の未定義のアイテムを削除する代わりに、代わりに削除を使用します。
コードコピーは次のとおりです。
var items = [12、548、 'a'、2、5478、 'foo'、8852、 'doe'、2154、119];
items.length; //戻る11
アイテムを削除[3]; // trueを返します
items.length; //戻る11
/ *アイテムは[12、548、 "a"、未定義×1、5478、 "foo"、8852、未定義×1、 "doe"、2154、119] */に等しくなります。
大丈夫です...
コードコピーは次のとおりです。
var items = [12、548、 'a'、2、5478、 'foo'、8852、 'doe'、2154、119];
items.length; //戻る11
items.splice(3,1);
items.length; // 10を返します
/ *アイテムは[12、548、 "a"、5478、 "foo"、8852、未定義×1、 "doe"、2154、119]に等しくなります */] */
削除メソッドは、オブジェクトプロパティを削除する必要があります。
20。長さ属性を使用して、配列を短くします
上記のように、開発者は長さ属性を使用してアレイを短くすることもできます。
コードコピーは次のとおりです。
var myArray = [12、222、1000、124、98、10];
myarray.length = 4; // MyArrayは[12、222、1000、124]に等しくなります。
定義するアレイの長さの値が高すぎると、配列の長さが変更され、いくつかの未定義の値が配列に入力されます。配列の長さプロパティは読み取り専用ではありません。
コードコピーは次のとおりです。
myarray.length = 10; //新しい配列の長さは10です
myArray [myarray.length -1]; // 未定義