1

谁能解释这行代码是如何工作的?它是流图的一部分,当我将鼠标悬停在一个流上时,其余部分的不透明度变为 0.2。它真的是?在中间,我不是 100% 的。

            .attr("opacity", function(d, j) {
                    return j != i ? 0.2 : 1;
                });

谢谢。

4

1 回答 1

3

它是一个三元运算符、条件运算符、简写 if、内联 if 等。

?: 运算符可用作 if...else 语句的快捷方式。它通常用作较大表达式的一部分,其中 if...else 语句会很尴尬。例如:

   var now = new Date();
   var greeting = "Good" + ((now.getHours() > 17) ? " evening." : " day.");

http://msdn.microsoft.com/en-us/library/ie/be21c7hw(v=vs.94).aspx

基本上,如果j不等于i,返回0.2,否则返回1

于 2013-01-14T14:15:05.543 回答