2015.12.04 HTML5真题练习

HTML5学堂:每天一道题,强壮程序员!今日主要涉及昨日题目(计时器、单线程、Date对象知识)的解答,以及一道涉及数据类型、NaN相关知识的题目。

HTML5真题【2015.12.03】答案解析

昨日真题题目如下,最终输出的结果是多少?

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>HTML5学堂 - H5course</title>
<link rel="stylesheet" href="reset.css">
</head>
<body>
<script>
var curDate = new Date();
setTimeout(function(){
console.log('a');
}, 500);
while(new Date() - curDate<1000){


}
</script>
</body>
</html>

本题目的答案是:在运行1秒之后,控制台中打印出了a这个字符。

while循环自不必说。解释一下代码:在代码的第十行,获取了一下当前时间,之后原本是希望将计时器的代码于500毫秒之后放置于JS的执行队列当中,但是正好后面有一个while循环,于是运行while循环语句,每次运行循环时均会再次获取时间,将该时间与之前的首次时间做差值,达到1000毫秒之后才可以跳出循环,也就意味着,在线程当中,while循环语句占据了1000毫秒的位置,这也就让计时器中的代码延迟了500毫秒才能够执行。

答案解析:本题目主要涉及JavaScript高级计时器

HTML5真题【2015.12.04】题目

<script>
var str = 'H5course';
var num = parseInt(str);
if(num == NaN) {
alert(NaN);
} else if(num == 123) {
alert(123);
} else if(typeof num == 'number') {
alert('number');
} else {
alert('str');
}
</script>

关于每日代码练习题的答案和解析,我们会在明日文章当中,发布相关答案以及基本原理。(PS:周六日不发布题目)

原文发布于微信公众号 - HTML5学堂(h5course-com)

原文发表时间:2015-12-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏编程

Java后台编程初学者,这些常识你都知道吗?

小编也是一位Java后台编程初学者,以后每天利用下班时间来给大家分享一下Java编程中的一些常识,希望有心学习的可以多看一眼,如果你是高手欢迎指点文中小编的不足...

1799
来自专栏偏前端工程师的驿站

JS魔法堂:函数节流(throttle)与函数去抖(debounce)

一、前言                                     以下场景往往由于事件频繁被触发,因而频繁执行DOM操作、资源加载等重行为,导致...

1776
来自专栏HappenLee的技术杂谈

C++雾中风景2:struct还是class?

在C++语言作为C语言的一个超集,但是并不兼容C语言的所有语法规则的。C语言是我学习的第一门编程语言,相对于对其中的语法规则比较熟悉,C语言之中可以使用stru...

672
来自专栏用户2442861的专栏

最简单的JavaScript模板引擎

 在小公司待久了感觉自己的知识面很小,最近逛博客园和一些技术网站看大家在说JavaScript模版引擎的事儿,完全没有概念,网上一搜这是08年开始流行起来的。。...

701
来自专栏码洞

巧用Google Fire简化Python命令行程序

上面是官方的示例代码,有了fire,编写Python的命令行程序就变得非常简单,我们无需再去处理繁琐的命令行参数解析了。接下来我们仿照HelloWorld,编写...

702
来自专栏大内老A

ASP.NET MVC下的异步Action的定义和执行原理

Visual Studio提供的Controller创建向导默认为我们创建一个继承自抽象类Controller的Controller类型,这样的Controll...

2075
来自专栏Java帮帮-微信公众号-技术文章全总结

JavaWeb17-案例之ajax(Java真正的全栈开发)

案例 & ajax 一.案例 1. 生成订单操作分析 先看下订单页面: 分析下订单表需要那些字段 id 收货人(receiverName) 收货地址(recei...

35310
来自专栏逍遥剑客的游戏开发

在C#中派生C++的抽象类

1904
来自专栏JAVA高级架构

Java 面试题:百度前200页都在这里了

基本概念 操作系统中 heap 和 stack 的区别 什么是基于注解的切面实现 什么是 对象/关系 映射集成模块 什么是 Java 的反射机制 什么是 ACI...

3496
来自专栏java技术学习之道

百度"Java面试题"前200页都在这里了

862

扫码关注云+社区