专项练习24

这篇具有很好参考价值的文章主要介绍了专项练习24。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、选择题

    1、JavaScript 中的数字在计算机内存中占多少个Byte?

    2、请问以下JS代码会输出什么

二、编程题

    1、以数字的形式返回数字参数向下取整的结果


一、选择题

1、JavaScript 中的数字在计算机内存中占多少个Byte?

A、2 Byte

B、4Byte

C、8Byte

D、16Byte

正确答案:C        你的答案:A

解析:

(1)关于Javascript中数字的部分知识总结

①Javascript中,由于其变量内容不同,变量被分为基本数据类型变量引用数据类型变量

  • 基本类型变量8字节内存,存储基本数据类型(数值、布尔值、null和未定义)的值
  • 引用类型变量则只保存对对象、数组和函数等引用类型的值的引用(即内存地址)

②JS中的数字是不分类型的,也就是没有byte/int/float/double等的差异

(2)JavaScript内部,所有数字都是以64位浮点数形式储存,即使整数也是如此


2、请问以下JS代码会输出什么
var a = 10; 
(function a() {
    a = 20;
    console.log(a); 
})()

A、10

B、20

C、undefined

D、输出函数a的内容

正确答案:D        你的答案:B

解析:

(1)本题存在变量提升函数提升

①一开始变量a被提升,值为undefined,由于函数提升优先级更高,所以a先被赋值为函数
②且是立即执行函数执行了函数a,输出a目前的值(即函数),之后才是被赋值为10

(2)函数可以在函数体中访问自己的标识符(函数名)

(3)普通函数可以修改变量名,立即执行函数不能修改变量名

①普通函数:

function a(){
    a = 34;
    console.log(a)   // 打印结果是34
}
a() 

②立即执行函数:

(function a(){
    a = 34;
    console.log(a)  //打印结果是函数a
})()

专项练习24,刷题,javascript,前端,学习,开发语言

(4)详细解答函数不同情况的输出结果

①立即执行函数【不带参数】:如果有与变量相同的函数名,那么函数体内不可以修改函数名

(function add(){
    add = 100;//此行代码作废,无效,因为此行代码的意思是要修改函数名,此处是立即执行函数,不允许被修改!
    console.log(add);
})();

专项练习24,刷题,javascript,前端,学习,开发语言

②立即执行函数【不带参数】:如果没有与变量相同的函数名,那么可以正常输出变量值

(function (){
    a = 100;// 此时的a成为全局变量,挂在到window上!
    console.log(a);//100
})();

 ③普通函数【不带参数】:如果有与变量相同的函数名,调用函数将报错

var add = 1;
function add(){
    add = 2;
    console.log(add);//2
}
add();

专项练习24,刷题,javascript,前端,学习,开发语言

 ④普通函数【带参数】:变量的有效作用域

var a = 1;
function add(a=2){  
   console.log(a);//2  这地方的a在预解析变量声明提升处理完成后,最后一步会把同名的参数a的值2,赋值给变量a
   var a = 3;//该赋值仅在函数内有效
   console.log(a);//3  
}
add();
console.log(a)//1 

 ⑤普通函数【带函数参数】:执行函数传参的函数

<script>
    var a = 1;
    function add(a = 1, b = function () {
        a = 3;
        console.log(a);//3  修改的是参数体内的a!
    }) {
        b();
        console.log(a);//1 变量声明提升之后,被同名函数a覆盖,后又被同名参数a覆盖,最终值为1
        var a = 10; //该赋值仅在add()函数内有效
        console.log(a);//10    
    } 
    add();
    console.log(a)//1  最外层的a变量
</script>

二、编程题

1、以数字的形式返回数字参数向下取整的结果

解析:

(1)Math.floor()方法,向下取整

<script>
    let number = 23.46
    function _floor(number){
        return Math.floor(number)
    }
    console.log(_floor(number));
</script>

(2)Math.trunc()方法将数字的小数部分去掉,只保留整数部分

<script>
    let number = 23.46
    function _floor(number){
        return Math.trunc(number)
    }
    console.log(_floor(number));
</script>

(3)spliit()方法,字符串切割

<script>
    let number = 23.46
    function _floor(number){
        let arr = number.toString().split('.')
        return +arr[0]
    }
    console.log(_floor(number));
</script>

(4)parseInt()方法,转整型

<script>
    let number = 23.46
    function _floor(number){
        return parseInt(number)
    }
    console.log(_floor(number));
</script>

(5)~~两次按位取反

<script>
    let number = 23.46
    function _floor(number){
        return ~~number
    }
    console.log(_floor(number));
</script>

(6)>>右移位运算

<script>
    let number = 23.46
    function _floor(number){
        return number >> 0
    }
    console.log(_floor(number));
</script>

(7)文章来源地址https://www.toymoban.com/news/detail-546367.html

<script>
    let number = 23.99
    function _floor(number){
        return number-number%1
    }
    console.log(_floor(number));
</script>

到了这里,关于专项练习24的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C语言-每日刷题练习

      小明正在玩一个“翻硬币”的游戏。 桌上放着排成一排的若干硬币。我们用  *  表示正面,用  o  表示反面(是小写字母,不是零),比如可能情形是  **oo***oooo ,如果同时翻转左边的两个硬币,则变为  oooo***oooo 。现在小明的问题是:如果已知了初始状态和要达到的目

    2024年02月05日
    浏览(35)
  • 【C语言】数组和指针刷题练习

    指针和数组我们已经学习的差不多了,今天就为大家分享一些指针和数组的常见练习题,还包含许多经典面试题哦! 一、求数组长度和大小 普通一维数组 字符数组 字符串数组 指向字符串的字符指针 二维数组 总节: 数组名的意义: sizeof(数组名),这里的数组名表示整个数

    2024年02月07日
    浏览(41)
  • 大型医院云HIS系统:采用前后端分离架构,前端由Angular语言、JavaScript开发;后端使用Java语言开发 融合B/S版电子病历系统

    一套医院云his系统源码 采用前后端分离架构,前端由Angular语言、JavaScript开发;后端使用Java语言开发。融合B/S版电子病历系统,支持电子病历四级,HIS与电子病历系统均拥有自主知识产权。 文末卡片获取联系! 基于云计算技术的B/S架构的医院管理系统(简称云HIS),采用前后

    2024年02月03日
    浏览(48)
  • 【C语言】【典例详解】【刷题】猜名次&&猜凶手【循环练习】

    目录 猜名次问题 典例题目 题目分析: 代码实现: 运行结果: 猜凶手问题  典例题目 题目分析 代码实现: 运行结果: 猜名次: 5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果: A选手说:B第二,我第三; B选手说:我第二,E第四; C选手说:我第一,D第二;

    2024年02月07日
    浏览(37)
  • [HTML]Web前端开发技术16(HTML5、CSS3、JavaScript )表格课后练习网页标题:域标签的使用网页标题:美家装饰联系我们网页标题:登录界面网页标题问卷调查——喵喵画网页

    希望你开心,希望你健康,希望你幸福,希望你点赞! 最后的最后,关注喵,关注喵,关注喵,佬佬会看到更多有趣的博客哦!!! 喵喵喵,你对我真的很重要! 目录 前言 表格课后练习 网页标题:域标签的使用 网页标题:美家装饰联系我们 网页标题:登录界面 网页标题

    2024年01月24日
    浏览(45)
  • 敏捷专项练习题202207

    18、  [单选]  对于产品负责人来说,新数据库的要求非常模糊。 在与客户进行了长时间的讨论后,你发现你对产品或构建产品的过程没有足够的了解,难以继续推进。 作为敏捷实践者,接下来应该怎么做? The requirements for the new database are very vague to the product owner. After lengt

    2024年02月05日
    浏览(36)
  • 【MySQL】MySQL 专项练习

    其他 SQL的执行顺序是:FROM–WHERE–GROUP BY–HAVING–SELECT–ORDER BY 使用别名的方法 正确方法(3种): 字段 AS 别名 字段 别名: AS可省 字段 = 别名 仅限 SQL Server 错误方法: 别名=字段名称 :会将该字段所在的列中所有数据替换成别名 MySQL中正则表达式的匹配规则 MySQL 中使用

    2024年01月16日
    浏览(40)
  • 专项练习11

    目录 一、选择题     1、执行下列选项的程序,输出结果不是Window对象的是()     2、以下哪些代码执行后 i 的值为10: 二、编程题     1、判断 val1 和 val2 是否完全等同     2、统计字符串中每个字符的出现频率,返回一个 Object,key 为统计字符,value 为出现频率①不限

    2024年02月10日
    浏览(41)
  • 专项练习9

    目录 一、选择题     1、在 JavaScript 中,用于阻止默认事件的默认操作的方法是     2、以下代码执行后,result 的值为()     3、不能从字符串 const str = \\\'qwbewrbbeqqbbbweebbbbqee\\\';中能得到结果 [\\\"b\\\", \\\"bb\\\", \\\"bbb\\\", \\\"bbbb\\\"]的语句是?     4、下面哪些方法可以实现在jQuery中通过远程

    2024年02月10日
    浏览(41)
  • 【C/PTA】指针专项练习(一)

    本文结合PTA专项练习带领读者掌握指针,刷题为主注释为辅,在代码中理解思路,其它不做过多叙述。 删除一个字符串中的所有数字字符。 函数接口定义: 其中 s 是用户传入的参数。 函数的功能是删除指针 s 所指的字符串中的所有数字字符。 裁判测试程序样例: 输入样例

    2024年02月04日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包