JavaScript中运算符种类繁多,常用的运算符有赋值、逻辑、关系运算符,以下运算结果正确的是 1. var a=0,b=0; var c=a+++b; a b c的值分别为:11 1 2. 1&& "foo" ||0 表达式的值为:"foo” 3. 1|| "foo" && 0 表达式的值为:"foo" 4. typeof 2+3 表达式的值为:"number” A:1 B:2 C:3 D: 4
时间: 2024-03-31 17:36:07 浏览: 62
正确答案是 D:4。
解析:
1. var a=0,b=0; var c=a+++b; a b c的值分别为:1 1 1。++运算符的优先级高于+运算符,所以先执行a++,然后再加上b的值,得到1+1=2,赋值给c,最后a自增1,变成1。
2. 1&& "foo" ||0 表达式的值为:"foo”。先计算1 && "foo",因为1为true,所以结果为"foo"。再计算"foo" || 0,因为"foo"也为true,所以结果为"foo"。
3. 1|| "foo" && 0 表达式的值为:"1"。先计算1 || "foo",因为1为true,所以结果为1。再计算1 && 0,因为0为false,所以结果为0。所以整个表达式的值为1。
4. typeof 2+3 表达式的值为:"number3"。typeof的优先级比+低,所以先执行typeof 2,得到"number"。然后再和3相加,得到"number3"。
相关问题
JavaScript中运算符种类繁多,常用的运算符有赋值、逻辑、关系运算符,以下运算结果正确的是 1. var a=0,b=0; var c=a+++b; a b c的值分别为:111 2. 1&&"foo"| 0 表达式的值为:"foo” 3. 1|| "foo"&& 0 表达式的值为:"foo" 4. typeof 2+3 表达式的值为:"number” A:1 B: 2 C: 3 D:4
正确答案是 B.
1. `var a=0,b=0; var c=a+++b; a b c` 的值分别为:1 1 0。因为 `a+++b` 相当于 `a++ + b`,`a` 的值会先自增为 1,然后与 `b` 相加得到 1,赋值给 `c`,所以 `a` 的最终值为 1。
2. `1&&"foo"| 0` 的值为 `"foo"`。因为 `1&&"foo"` 的结果为 `"foo"`,而 `"foo"| 0` 的结果为 `"foo"`,因为位或运算符会将字符串转换为数字。
3. `1|| "foo"&& 0` 的值为 `1`。因为 `1 || "foo"` 的结果为 `1`,而 `0` 被视为假值,所以 `1 || "foo" && 0` 的结果为 `1`。
4. `typeof 2+3` 的值为 `"number3"`。因为 `typeof 2` 的结果为 `"number"`,而 `"number" + 3` 的结果为 `"number3"`。
JavaScript 中运算符优先顺序
JavaScript 中运算符的优先级从高到低依次是:
1. 圆括号:()
2. 一元运算符:++、--、-、!、typeof、void
3. 乘法、除法、取模运算符:*、/、%
4. 加法、减法运算符:+、-
5. 关系运算符:<、>、<=、>=、instanceof、in
6. 相等运算符:==、!=、===、!==
7. 逻辑运算符:&&、||
8. 赋值运算符:=、+=、-=、*=、/=、%=
9. 条件运算符:? :
10. 逗号运算符:,
阅读全文