?: 三元运算符
形式: cond?a:b
当cond为true时该表达式的值为a,cond为false时该表达式值为b
汉语翻译: cond成立吗?如果成立,俺是a,否则俺是b
例:
var i=1; //var i=2;
x=i==1?"xixi":"haha";
alert(x);第二句等价于x=(i==1?"xixi":"haha");引入它是为了避免短的if else语句,不然上面的代码我们要写成:
var i=1;
if(i==1)
x="xixi";
else
x="haha";
alert(x);c、java中都是一样的。最近学python,它没有这个东东,其变通方式真叫俺大跌眼镜~不如直接if else了~
形式: cond?a:b
当cond为true时该表达式的值为a,cond为false时该表达式值为b
汉语翻译: cond成立吗?如果成立,俺是a,否则俺是b
例:
var i=1; //var i=2;
x=i==1?"xixi":"haha";
alert(x);第二句等价于x=(i==1?"xixi":"haha");引入它是为了避免短的if else语句,不然上面的代码我们要写成:
var i=1;
if(i==1)
x="xixi";
else
x="haha";
alert(x);c、java中都是一样的。最近学python,它没有这个东东,其变通方式真叫俺大跌眼镜~不如直接if else了~
?:
原型如下:表达式?语句1:语句2
当表达式为真时执行 语句1,表达式为假时执行 语句2;o.className=o==this.current?"focus":"out"
此语句更直观的可改成: o.className=(o==this.current?"focus":"out");
表示当o等于this.current时执行语句1(既o.className="focus"),否则执行语句2(既o.className="out");