专栏首页HTML5学堂2015.11.30 HTML5真题练习

2015.11.30 HTML5真题练习

HTML5学堂:每天一道题,强壮程序员!今日主要涉及昨日题目的解答,以及一道涉及函数的形参实参、arguments对象的题目

HTML5真题【2015.11.29】答案解析

昨日真题题目如下,问的是result和username,分别是多少?

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>HTML5学堂 - H5course</title>
<meta name="viewport" content="width=device-width,user-scalable=no">
<link rel="stylesheet" href="model/css/reset.css">
</head>
<body>
<div class="wrap"></div>
<script>
  var username = 'HTML5学堂';
  var result = '返回结果';
  function joinIt(result) {
      result = result + 'http://www.h5course.com';
  }
  username = joinIt(username);
  console.log(result);
  console.log(username);
</script>
</body>
</html>

本题目的答案是:result结果依旧是'返回结果',而username结果为undefined。

答案解析:本题目主要涉及作用域和函数返回值的问题。

关于result:首先,我们在全局中定义了一个result变量。其次,在函数当中,我们使用了形参,形参名也是result,由于函数是一个局部作用域,所以,形参的result相当于是在局部作用域当中创建了一个空间,用于存储result。

局部作用域中的result与全局中的result是不同的两个。在作用域的概念当中,全局是不能访问局部的,换句话说,局部内容的变化是不会影响到全局变量的。在这个效果当中,无论函数中的result如何变化,都不会影响到全局下的result,因此,result值为'返回结果'。

关于username:在代码当中,我们将一个函数的运行结果赋值给了username。此处需要注意的是,函数的运行结果是函数的返回值,也就是return的内容,当一个函数没有书写return,返回内容时,默认返回的是undefined。

相关知识:return语句的用法(函数的返回值)

HTML5真题【2015.11.30】题目

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>HTML5学堂 - H5course</title>
<meta name="viewport" content="width=device-width,user-scalable=no">
<link rel="stylesheet" href="model/css/reset.css">
</head>
<body>
<div class="wrap"></div>
<script>
  function changeName(oldNum, newNum){
      newNum = 5;
      console.log(arguments.length * oldNum + arguments.callee.length * arguments[1]);
  }
  changeName('12');
</script>
</body>
</html>

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

本文分享自微信公众号 - HTML5学堂(h5course-com),作者:HTML5学堂

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2015-12-01

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 2015.11.29 HTML5真题练习

    HTML5学堂:每天一道题,强壮程序员!今日的HTML5题目,主要涉及到JavaScript中的函数、函数返回值和作用域的相关知识。一起来看题目吧~! HTML...

    HTML5学堂
  • 揭开身份证验证的神秘面纱

    正则验证身份证号码 HTML5学堂:曾经一直觉得用正则验证身份证号码是很简单的~但是,当真正挖掘身份证号码的规则之后,才发现,想要写好一个正则验证也没有那么容易...

    HTML5学堂
  • 斐波那契数列与arguments.callee

    HTML5学堂:提到斐波那契数列,很多人还不是太清楚,但是如果提到兔子繁殖这个经典题目,相信学过计算机语言的人们会立刻感觉“亲切”起来,今天我们就来说说斐波那契...

    HTML5学堂
  • Typo3 CVE-2019-12747 反序列化漏洞分析

    TYPO3是一个以PHP编写、采用GNU通用公共许可证的自由、开源的内容管理系统。

    知道创宇云安全
  • Typo3 CVE-2019-12747 反序列化漏洞分析

    TYPO3是一个以PHP编写、采用GNU通用公共许可证的自由、开源的内容管理系统。

    Seebug漏洞平台
  • 【PAT乙级】旧键盘打字

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    喜欢ctrl的cxk
  • python列表与元组的用法

    7.列表生成式   #[i*i for i in range(10)]       [i*i for i in range(10) if i>5]

    py3study
  • spring cloud oauth2资源服务器自定义认证失败和拒绝访问错误消息

    路过君
  • Leetcode: Reverse Bits

    题目: Reverse bits of a given 32 bits unsigned integer.

    卡尔曼和玻尔兹曼谁曼
  • <进击的虫师>如何让程序"懂很多"?

    ? 最近在做一个有意思的小项目, 在一个聊天对话中, 你向电脑提出问题, 他会自动分词,然后根据关键字, 自动答复你 对所有的关键字做出解释, 工作量实在...

    zhaoolee

扫码关注云+社区

领取腾讯云代金券