前端面试题之易错面试题系列--part2

前端面试题之易错面试题系列–1后续

题目四(符号的优先级)

下面这段javascript代码, 输出什么

    var msg = "hello";
      for (var i = 0; i < 10; i++) {
        var msg = "hello" + i * 2 + i;
      }
      console.log(msg);

先看答案 hello189

解释

这道题的难点不在域.而是String拼接和符号的优先级.

//循环到最后的时候i=9 
"hello"+9*2+9    
"hello"+18+9
 "hello18"+9
"hello189"       // 结果为String类型字符串

题目五(运算符的优先级以及前++和后++)

下面这段javascript代码, 输出什么

	var x=10;
	var y=20;
	var z=x<y?x++:++y;
	console.log('x='+x+';y='+y+';z='+z);

看一下答案
在这里插入图片描述

解析
	var x=10;
	var y=20;
	var z=x<y?x++:++y;
	//当执行到这里的时候x=10,y=20,z=x++
	console.log('x='+x+';y='+y+';z='+z);
  1. 赋值=运算符的优先级最低。因此先看右边的表达式。
  2. 右边的表达式是一个三元运算符。
  • 判断x<y(10<20)返回true,因此执行:前的表达式。
  • 也就是整个表达式等价于:z = x++。
  • x自增前的值为10。
  • x++,x最终等于11。
  • y的值没有发生变化(因为没有执行:后面的表达式),因此y的值仍为20

题目六(Math.round())

以下代码执行后,result 的值是:

var result = Math.round(11.5) + Math.round(-11.5);

答案为1

解析

Math.round(x)

  • 如果参数的小数部分大于 0.5,则舍入到下一个绝对值更大的整数;
  • 如果参数的小数部分小于 0.5,则舍入到下一个绝对值更小的整数;
  • 如果参数的小数部分恰好等于0.5,则舍入到下一个在正无穷(+∞)方向上的整数。注意,与很多其他语言中的round()函数不同,

题目七(XML)

  1. 什么是 XML?
  • XML 指可扩展标记语言(EXtensible Markup Language)
  • XML 是一种标记语言,很类似 HTML
  • XML 的设计宗旨是传输数据,而非显示数据
  • XML 标签没有被预定义。您需要自行定义标签。
  • XML 被设计为具有自我描述性。
  • XML 是 W3C 的推荐标准
  1. XML 与 HTML 的主要差异
  • XML 不是 HTML 的替代。
  • XML 和 HTML 为不同的目的而设计:
  • XML 被设计为传输和存储数据,是扩展标记语言,其焦点是数据的内容。
  • HTML 被设计用来显示数据,是超文本标记语言,其焦点是数据的外观。
  • HTML 旨在显示信息,而 XML 旨在传输信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值