phpとjsの違いとは_基礎知識

WBOY
WBOYオリジナル
2016-05-16 17:26:481595ブラウズ
1. 型変換の違い

JavaScript では、空のオブジェクトと空の配列はブール値に変換され、

になります。 php

空のオブジェクトの空の配列は false のブール値に変換されます。

(php4 のみ、空のオブジェクトのブール値は false)

0 以外の負の値はすべて変換されます。


2、実際の仮パラメータの差

js では、仮パラメータの数に制限はありません。パラメータと実パラメータの数は、実パラメータよりも大きくても、実パラメータよりも少なくても構いません

PHP では、実パラメータが仮パラメータよりも大きい場合、エラーは報告されません。ただし、実パラメータの数が仮パラメータの数より少ない場合(仮パラメータが指定されていない場合は定義時にエラーが報告されます)



function mao( val1,val2,val3){
}
mao(aa,bb); >


このとき、val3 は実際のパラメータを指定していないため、エラーが報告されます
が、val3 の値を初期化するときはエラーは報告されません



コードをコピーします コードは次のとおりです: function mao(val1, val2,val3="123"){
}
mao(aa,bb);



未割り当ての形式を与えるために js で三項式を書くことができます パラメータには初期値が与えられますが、これは では代入できませんPHP のような形式的なパラメータ リスト
本質的な理由は、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 を直接呼び出すことができます。 8. 静的変数


PHP は、関数変数を静的 (static) として宣言することをサポートしています。

js静的変数はありませんが、関数の属性を定義して静的変数のふりをすることができます
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。