そのため、JS を開発するときに役立つ追加情報を保存するヘルパー名前空間があります。今は、それらをより適切に文書化し、JsDoc と Google Closure コンパイラの助けを借りて JS を強化する予定です。今日の2PMの時点で最新バージョンを入手しました。ただし、次のコードでコンパイラを実行するとエラーが発生します。
var my.company.tool = {
"isNumber": function( p_value )
{
return ( typeof(p_value) == "number" ) ? true : false;
},
/**
* @static
* @returns {Boolean} Indicative of an object.
*/
"isObject": function( p_value )
{
return ( typeof(p_value) == "object" ) ? true : false;
}
}
したがって、両方の戻り行で、「エラー - 一貫性のない戻り値の型」というコンパイラ エラーが発生します。
Google クロージャ コンパイラでこのような三項演算子を使用するにはどうすればよいですか? はい、Google で検索しましたが、関連性のない検索結果が表示され続けます。今のところ、三項を削除しますが、エラーなしで使用することをお勧めします:
「Tomasz Nurkiewicz」が示唆するようにステートメントを更新しましたが、まだエラーが発生しています: Changed made to code:
var my.company.tool = {
"isNumber": function( p_value )
{
return typeof(p_value) == "number";
},
/**
* @static
* @returns {Boolean} Indicative of an object.
*/
"isObject": function( p_value )
{
return typeof(p_value) == "object";
}
}
コンパイラ出力:
[pakeException]
js/core/IHR.js:68: ERROR - inconsistent return type
found : boolean
required: (Boolean|null)
return typeof( p_value ) == "number";
^
js/core/IHR.js:76: ERROR - inconsistent return type
found : boolean
required: (Boolean|null)
return ( typeof( p_value ) == "object" );
^
2 error(s), 0 warning(s), 99.0% typed
タイプを {Boolean|null} に設定しようとしても、エラーが発生します。何を与える?