0

重複の可能性:
JS ?: (三項) 演算子の使用方法

そのプラグインには 1 つの JavaScript がある wordpress 用のプラグインを 1 つダウンロードします。そのjsコードでは、それがどのように機能するのかわかりません。

function ddet_javascript() {

echo '
<script language="JavaScript" type="text/javascript"><!-- 
function expand(param) { 
param.style.display=(param.style.display=="none") ? "" : "none"; 
 } 
  //--></script>';
}

このコードでは、以下の行がわかりません。

param.style.display=(param.style.display=="none") ? "" : "none";

の用途は何ですか?および : この行で。誰かがそれについて知っているなら私に知らせてください。

4

7 に答える 7

3

それは演算子です:

(調子) ?真/偽

それは次のようなものです:

if(param.style.display=="none")
       param.style.display="";
else
       param.style.display="none;
于 2012-08-30T05:32:15.930 に答える
2

これは三項演算子です。if else ステートメントのように機能します。

このリンクを表示:

http://davidwalsh.name/learning-ternary-operators-tips-tricks

http://jqfundamentals.com/#example-2.16

于 2012-08-30T05:30:41.803 に答える
2

三項条件演算子です: 式

Cond ? a : b

が評価され、 true の場合はCond遅延して返され、そうでない場合は が返されます。ab

あなたの場合の式の結果全体がに割り当てられparam.style.displayます。つまり、displayがすでに に設定されている場合は"none"に設定され""、それ以外の場合は に設定され"none"ます。

この演算子は、値が何かを条件とする単一のを提供するため、多くの言語で一般的です。

于 2012-08-30T05:32:10.627 に答える
2

コードでは、次のように機能します。

if(param.style.display=="none"){
   param.style.display = "";  
} else{
    param.style.display = "none";  
}
于 2012-08-30T05:33:56.550 に答える
1

条件(三項)演算子と呼ばれます。

test ? expression1 : expression2

test が true の場合は式 1 を返し、それ以外の場合は式 2 を返します。

これはjqueryに固有のものではなく、javascript演算子です。

詳細については、三項演算子 javascript

于 2012-08-30T05:34:01.647 に答える
0

x=a?b:c, ?: は三項演算子です (3 つのオペランドで機能します)。a が true の場合は x=b、そうでない場合は x=c を意味します

于 2012-08-30T05:31:39.250 に答える
0
if (param.style.display=="none")
  param.style.display = "";
else
  param.style.display = "none";
于 2012-08-30T05:32:52.890 に答える