读代码,写结果

  var a = [];
    var b = a;
    b[0] = 1;
    console.log(a[0]);
    console.log(b[0]);
    console.log(a===b);

上述代码的结果分别为:
1
1
true

将对象赋值给变量,仅仅是赋值的引用,对象本身并没有赋值一次,因此,变量a和b指向同一个数组


10 + "objects"
"7" * "4"
1 - "x"
1 + {}
true + true
2 + null

10objects //转换为字符串
28 //转换为字符
NaN //无法转换为数值进行计算,因此返回 NaN
1[object Ojbect] //返回对象的 toString()结果,按照字符串相加
2 //bool 类型转换为数值类型
2 //null 转换为数值 0


var a = 2;
var obj = { x: 1, y: { z: 2} };
var n = [obj,3,[4,5]];
console.log(a << 2);
console.log(obj["y"].z);
console.log(n[0].y["z"]);
console.log(n[2]["1"]);
delete n[0];
console.log(n[0].x);

8
2
2
5
console.log(n[0].x);此行代码错误,无法输出有效信息,会输出Error信息


上述代码运行后,变量 x、y和z的值为多少?

    var x = 10;
    var y = 20;
    var z = x < y ? x++ : ++y;

上述代码运行后,变量x的值为 11;变量y的值为20;变量z的值为10。
这是因为,运行第三行代码时,只执行?后的第一个语句,因此,y的值不发生变化,仍为 20;并返回 x 的值赋值给变量z,因此z的值为 10;然后将 x 的值增加1,变为 11。


上述代码运行后,将产生有效输出,还是代码错误?

var empAge = 20;
var empName;
if (empAge > 20 && empName.length > 0) {
    console.log(1);
}
else {
    console.log(2);
}

上述代码运行,会输出 2,而不会发生错误。
这是因为, if 条件中的逻辑表达式的第一个条件(empAge > 20)不满足,会返回 false,此时,将发生“逻辑短路”,而不会继续判断下一个条件。因此,即使下一个条件中的变量empName没有赋值,此时如果计算empName.length 将发生错误;但是,因为发生了“逻辑短路”,不会计算此表达式,因此不会发生错误。
既然 if 条件中的逻辑表达式返回 false,则运行 else 语句:输出 2。


写出下列代码的输出结果:

var x = "global";
function test() {
var x = "local";
return x;
}
console.log(test());

上述代码的输出结果为 local。这是因为,在函数 test() 体内,局部变量的优先级高于同名的全局变量。因此,如果在函数体内声明的局部变量和全局变量重名,则以局部变量优先。因此,调用函数 test() 时,返回的是局部变量x,其值为 local。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
《java程序设计》课程的题库资料,由贺州学院整理,可供学生期末课程复习使用,也可以供相关任课教师出卷使用。 内容示例为: 9. 阅读下列程序片段,出运行结果。 public class Test { public static void main(String[] args) { int percent = 10; tripleValue(percent); System.out.println(percent); } public static void tripleValue(int x) { x = 3 * x; } } 代码执行后输出的结果是______。 答案:10 [解析] static 关键字应用的场合有:①用来修饰类中定义的变量,这样的变量称为类变量或静态变量。②可以用来修饰类中定义的方法,这样的方法称为静态方法。③用来修饰初始化语句块,这样的语句块常称为静态初始化语句块。static 在这里表示这个方法为类方法,不属于任何对象实例,而是类所有,描述对象的共有动作,可以用类名直接调用。在调用了tripleValue函数之后,函数的值没有返回,所以percent的值还是10。 10. 阅读下列程序片段,出运行结果。 class Shape { public Shape() { System.out.print("Shape"); } } class Circle extends Shape { public Circle() { System.out.print("Circle"); } } public class Test { public static void main(String[] args) { Shape d = new Circle(); } } 代码执行后输出的结果是______。 答案:ShapeCircle [解析] 继承是而向对象编程的一个主要优点之一,它对如何设计Java类有着直接的影响。继承有如下几点好处: ①它可以利用已有的类来创建自己的类,只需要指出自己的类和已有的其他类有什么不同即可,而且还可以动态访问其他有 关类中的信息。 ②通过继承,可以利用Java类库所提供的丰富而有用的类,这些类都已经被很好地实现。 ③当设计很大的程序时,继承可以使程序组织得层次清晰,有利于程序设计相减少错误的发生。该程序首先编了一个Shape的类,然后又编一个类Circle去继承Shape类。由于子类拥有父类所有的属性和方法,所以输出的是ShappeCircle。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

泠泠在路上

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值