ホームページ > 記事 > ウェブフロントエンド > alert() と console.log()_javascript スキルの違いの概要
簡単に言うと、alert はポップアップ プロンプトであり、console.log はデバッグ ツールのログです。以下は、alert() と console.log() の違いの詳細なリストです。
[1]alert()
[1.1] [OK] をクリックしないと、後続のコードの実行を続行できなくなります。
[1.2]alert() は文字列のみを出力できます。アラート出力がオブジェクトの場合、toString() メソッドが自動的に呼び出されます。
例:alert([1,2,3]);//'1,2,3'[1.3] アラートは複数のパラメーターの書き込みをサポートしておらず、最初の値のみを出力できます
例:alert(1,2,3);//1
[2]console.log()
[2.1] プリントステーションでの出力[2.2] あらゆる種類のデータを印刷できます
例: console.log([1,2,3]);//[1,2,3]
[2.3] 複数パラメータの書き込みをサポート
例: console.log(1,2,3)// 1 2 3
プロトタイプチェーンの toString() メソッドは、alert() と console.log() を出力し、異なる結果を取得します
<script type="text/javascript"> var a = [1,2,3]; alert(a); //1,2,3 Array.prototype.toString = function(){ return 'str'; } alert(a); //str </script>
<script type="text/javascript"> var a = [1,2,3]; console.log(a); //[1,2,3] Array.prototype.toString = function(){ return 'str'; } console.log(a); //[1,2,3] </script>
上記のコードが異なる結果を出力する理由は次のとおりです。
console.log() はあらゆる種類のデータを出力できます。また、alert() は文字列のみを出力できます。アラート出力がオブジェクトの場合は、toString() メソッドが自動的に呼び出されます。 console.log() の出力をアラートと同じにしたい場合は、toString():を呼び出す必要があります。
console.log(obj.toString() );toString() を記述するかどうかとは関係ありません。自分で記述する toString() は、オブジェクトのデフォルトの toString() メソッドをオーバーライドするだけです。
主な理由は、2 つの関数で予期されるデータ型が異なることです。 alert() で予期されるデータ型は文字列です。これは文字列コンテキストでオブジェクトを使用することと同等であり、対応する変換が自然に行われます。 console.log() は明らかにあらゆるタイプのデータを受け入れます。そうすれば彼は切り替える必要はありません。つまり、文字列コンテキストに配置する必要はありません。したがって、当然 OBJ が初期データ型になります。
上記の内容は、alert() と console.log() の違いをリストしたもので、さまざまなアイデアを持つ友人が提案し、みんなと共有し、一緒に学び、進歩することを歓迎します。