1、型変換の違い
JavaScriptの場合
空のオブジェクトと空の配列は true のブール値に変換されます。
ただしphpでは
空のオブジェクトと空の配列は false としてブール値に変換されます。
(空のオブジェクトのブール値はphp4のみfalseです)
ゼロ以外の負の値を含め、それらはすべて true に変換されます。
2、実際のパラメータの違い
js では、仮パラメータと実パラメータの数に制限はありません。仮パラメータの数は実際のパラメータよりも多くても少なくても構いません。
PHP では、実パラメータが仮パラメータよりも大きい場合はエラーが報告されませんが、実パラメータの数が仮パラメータの数より少ない場合 (指定されていない仮パラメータが未定義の場合はエラーが報告されます) )リーリー
しかし、val3 が値を初期化するとき、エラーは報告されません
リーリー
本質的な理由は、PHP にはプロトタイプ接続が存在せず、実行中に変数オブジェクトが存在しないことです。
3. データ型の違い
jsには未定義の型がありますが、phpにはそのような型はありません
そのため、変数に値が割り当てられていない場合、その型は js では未定義になります (宣言されていない変数を使用するとエラーが報告されます) が、php では Null 型になります。
そして、jsには数値型しかありませんが、phpにはそのような型はなく、int float型に置き換えられます。
4. 文字列の連結
js でプラス記号 + +=
を使用するPHPでドット..=
を使用する5. 制御ステートメントの違い
else if と elseif は両方とも php でサポートされていますが、js は前者のみをサポートしています
6. 大文字小文字の問題
js では大文字と小文字が厳密に区別されます
PHP のカスタム関数名は大文字と小文字が区別されません。関数に名前を付ける場合、宣言された関数名や PHP の組み込み関数名は使用できません。
7. 変数の範囲
関数スコープ外で宣言された PHP 変数はグローバル変数です。関数は別個のプログラムフラグメントと見なされるため、ローカル変数はグローバル変数の可視性をオーバーライドするため、関数内でグローバル変数を直接呼び出して使用する方法はありません。関数内でグローバル変数を使用したい場合は、global キーワードを使用してターゲット変数を定義し、
を使用して関数本体にこの変数がグローバルであることを伝える必要があります。
プロトタイプ接続によりjsを直接呼び出すことができます
8. 静的変数
PHP は関数変数の静的宣言をサポートしています
js には静的変数はありませんが、関数の属性を定義して静的変数のふりをすることができます
http://www.bkjia.com/PHPjc/440222.html
www.bkjia.com