ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScriptの一般的なメソッドまとめ_基礎知識

JavaScriptの一般的なメソッドまとめ_基礎知識

WBOY
リリース: 2016-05-16 16:29:35
オリジナル
1252 人が閲覧しました

この章では、このポインタ、スコープ、プロトタイプなどの js の基礎となる原則の一部については詳しく説明しません。これには、コードを簡素化し、日常の開発中に実行効率を向上させるのに役立つ、または可能性のあるいくつかのことが含まれます。経験的な方法として使用できるため、長さは長くなく、記事全体を少しずつ読むことができ、プログラミングの楽しさを体験できます。

2 つの間隔内の乱数を取得

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

function getRandomNum(Min, Max){ // 2 つの間隔内の乱数を取得します
// @ Backfire Crazy は、最初のパラメーターが 2 番目のパラメーターより大きい可能性があるため、もう少し判断を追加する方が信頼性が高いと提案しました
If (最小 > 最大)
Max = [Min, Min = Max][0] // 2 つの変数値をすばやく交換します
;
var Range = 最大 - 最小 1;
var Rand = Math.random();
Min Math.floor(Rand * Range) を返します;
};

ランダムに正/負のパラメータを返します

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

function getRandomXY(num){ // 正/負のパラメータをランダムに返します
num = 新しい数値(num);
If (Math.random() num = -num;
数値を返します;
}

setInterval() または setTimeOut() パラメーターを渡すタイマー関数

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

var s = '私はパラメータです';
関数 fn(args) {
console.log(args);
}
var a = setInterval(fn(s),100); // xxxxxx エラー xxxxx
; var b = setInterval(function(){ // 正解です。匿名関数を使用して時限関数を呼び出します
fn(s);
}, 100);

setInterval() または setTimeOut() タイマーが

を再帰的に呼び出します

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

var s = true;
function fn2(a, b){ // ステップ 3
If (s) {
clearInterval(a);
clearInterval(b);
}
};
function fn(a){ // ステップ 2
var b = setInterval(function(){
fn2(a, b) // 2 つのタイマーを渡します
}, 200)
};
var a = setInterval(function(){ // ステップ 1
fn(a); // b はタイマー自体を表し、シートパラメータとして渡すことができます
}, 100);

文字列を数値に変換します

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

// new Number(String) も Number(String) も必要ありません。文字列
からゼロを減算するだけです。 var str = '100' // str: 文字列
; var num = str - 0;// num: 数値

空値判定

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

var s = '' // 空の文字列
; if(!s) // 空の文字列はデフォルトでブール値 false に変換され、判定ステートメントに直接記述できます
if(s != null) // ただし、空の文字列 != null
if(s != unknown) // 空の文字列も != unknown

IE ブラウザの parseInt() メソッド

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

// 次の変換は IE では 0、他のブラウザでは 1 です。これは、IE ブラウザが数値を解釈するために使用する基本システムに関連しています。 var iNum = parseInt(01);
// したがって、互換性のある記述方法は
です var num = parseInt(new Number(01));

Firebug は JS コードを便利にデバッグします

コードをコピーします コードは次のとおりです:
//Firebug には、情報を表示するための組み込みメソッドを提供する組み込みコンソール オブジェクトがあります
/**
* 1: console.log() は、alert() または document.write() の代わりに使用でき、プレースホルダー出力、文字 (%s)、整数 (%d または %i)、浮動小数点数 (%f) をサポートします。 ) とオブジェクト (%o)。例: console.log("%d 年 %d 月 %d 日", 2011,3,26)
*2: 情報が多すぎる場合は、console.group() と console.groupEnd()
を使用するメソッドを使用します。 *3: console.dir() はオブジェクトのすべてのプロパティとメソッドを表示できます
* 4: console.dirxml() は、Web ページのノードに含まれる html/xml コードを表示するために使用されます
* 5: console.assert() アサーション、式または変数が true かどうかを判断するために使用されます
* 6: console.trace() は関数
の呼び出しトレースを追跡するために使用されます。 * 7: console.time() と console.timeEnd()、コード
の実行時間を表示するために使用されます。 ※8:性能解析(プロファイラ)とは、プログラムの各部分の実行時間を解析し、どこにボトルネックがあるかを調べるもので、console.profile()....fn....console.profileEnd(というメソッドを使用します。 )
​*/

現在の時刻をミリ秒単位ですばやく取得します

コードをコピーします コードは次のとおりです:
// t == 現在のシステムのミリ秒値、理由: 符号演算子は Date の valueOf() メソッドを呼び出します。
var t = 新しい日付();

小数点以下の桁をすばやく取得します

コードをコピーします コードは次のとおりです:
// x == 2、以下の x の値はすべて 2、負の数も変換可能
var x = 2.00023;
// x = '2.00023' ;


2 つの変数の値を交換します (中間量

は使用されません)

コードをコピーします コードは次のとおりです:
var a = 1;
var b = 2;
a = [b, b=a][0]
alert(a '_' b) // 結果 2_1、a と b の値が入れ替わりました。


論理和 '||' 演算子

コードをコピーします コードは次のとおりです:
// b は null ではありません: a=b、b は null: a=1。
var a = b || 1;
// より一般的な使用法は、プラグイン メソッドにパラメータを渡し、イベント ターゲット要素を取得することです。 // IE には window.event オブジェクトがありますが、FF にはありません。



メソッド オブジェクトのみがプロトタイプ属性を持ちます

コードをコピーします コードは次のとおりです: // メソッドにはオブジェクト プロトタイプ プロトタイプ属性がありますが、元のデータにはこの属性がありません (例: var a = 1、a にはプロトタイプ属性がありません)
function Person() {} // 人物コンストラクター
Person.prototype.run = function() {alert('run...') } // プロトタイプの実行メソッド
; Person.run(); // エラー
var p1 = new Person(); // new 演算子を使用する場合のみ、プロトタイプの run メソッドが p1
に割り当てられます。 p1.run(); // 実行...



曜日をすぐに取得できます

コードをコピーします コードは次のとおりです: // 現在のシステム時刻が何曜日であるかを計算します
var week = "今日は: 週" "1 日目、2 日目、3 日目、4 日目、5 日目、6 日目".charat(new date().getDay());



閉鎖バイアス

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

/**
* クロージャ: あらゆる js メソッド本体をクロージャと呼ぶことができます。これは、インライン関数が外部関数のパラメータまたは属性を参照する場合にのみ発生するわけではありません。
* 独立したスコープがあり、その中に複数のサブスコープ (つまり、メソッドのネストされたメソッド) が存在できます。最終的に、クロージャーのスコープは最も外側のメソッド
のスコープになります。 * 独自のメソッド パラメーターとすべての埋め込み関数のメソッド パラメーターが含まれるため、埋め込み関数に外部参照がある場合、参照のスコープは、参照される関数が配置されている (トップレベルの) メソッド スコープになります
​*/
関数 a(x) {
関数 b(){
alert(x); // 外部関数パラメータを参照
}
b;
を返します }
var run = a('実行...'); // スコープの拡張により、外部関数 a の変数が参照・表示可能になります
run(); // アラート(): 実行..

アドレスパラメータ文字列を取得し、定期的に更新します

コードをコピーします コードは次のとおりです:
// クエスチョンマークを取得しますか?以下の内容には疑問符
が含まれています var x = window.location.search
// # 番号を含む警察番号 # の後のコンテンツを取得します
var y = window.location.hash
// タイマーを使用して Web ページを自動的に更新します
window.location.reload();

Null および未定義

コードをコピーします コードは次のとおりです:
/**
※未定義型は未定義の値を 1 つだけ持ちます。宣言された変数が初期化されていない場合、変数のデフォルト値は未定義です。
* Null 型も値は 1 つだけあり、null です。 Null は、まだ存在しないオブジェクトを表すために使用され、関数が存在しないオブジェクトを返そうとすることを示すためによく使用されます。
* ECMAScript は、unknown が null から派生すると信じているため、それらは等しいものとして定義されます。
* しかし、場合によってはこれら 2 つの値を区別しなければならない場合はどうすればよいでしょうか?次の 2 つの方法が使用できます
※判定の際は、オブジェクトに値があるかどうかの強い型判定「===」を使用するのがベストです。
​*/
var a;
alert(a === null); // a は空のオブジェクトではないため、
alert(a === 未定義); // true、a が初期化されていないため、値は未定義です
// 拡張子
alert(null == 未定義); // true、'==' 演算子が型変換を実行するため、
//同様に
アラート(1 == '1') // true
alert(0 == false); // true、falseは数値型0
に変換されます。

メソッドにパラメータを動的に追加します

コードをコピーします コードは次のとおりです:
// メソッド a にはもう 1 つのパラメータ 2
があります 関数 a(x){
var arg = Array.prototype.push.call(arguments,2);
alert(引数[0] '__' 引数[1]);
}

カスタマイズされた SELECT 境界線スタイル

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