javascript阶段测试

本文深入探讨了JavaScript的基础知识,包括eval函数的作用、window与document对象的区别、数据类型的判断及转换方法、事件绑定机制等内容,并介绍了JavaScript语言特性及其实现技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述
javascript阶段测试

一.基础简答题

  1. eval是做什么的?

答:它的功能是把对应的字符串解析成JS代码并运行

  1. 什么是window对象? 什么是document对象?

答:window对象即是访问浏览器的一个接口,也是规定的一个全局对象。在全局作用域中声明的任何一个变量,函数都会成为window对象的属性和方法。

document对象是window对象的子对象,可直接使用,多用于获取HTML页面元素

  1. null,undefined 的区别?

Undefined类型只有一个值,即undefined。当声明的变量还未被初始化时,变量的默认值为undefined。

Null类型也只有一个值,即null。null用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象。

  1. javascript 代码中的"usestrict";是什么意思 ? 使用它区别是什么?

答; 进入”严格模式”的标志,老版本的浏览器会把它当作一行普通字符串,加以忽略

将”use strict”放在脚本文件的第一行,则整个脚本都将以”严格模式”运行。如果这行语句不在第一行,则无效,整个脚本以”正常模式”运行。如果不同模式的代码文件合并成一个文件,这一点需要特别注意。

(严格地说,只要前面不是产生实际运行结果的语句,”use strict”可以不在第一行,比如直接跟在一个空的分号后面。)

将”use strict”放在函数体的第一行,则整个函数以”严格模式”运行

因为第一种调用方法不利于文件合并,所以更好的做法是,借用第二种方法,将整个脚本文件放在一个立即执行的匿名函数之中

– 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;

– 消除代码运行的一些不安全之处,保证代码运行的安全;

– 提高编译器效率,增加运行速度;

– 为未来新版本的Javascript做好铺垫。
  1. javascript中,有一个函数,执行时对象查找时,永远不会去查找原型,这个函数是?

    hasOwnProperty

  2. js延迟加载的方式有哪些?

答 共有:defer和async、动态创建DOM方式(用得最多)、按需异步载入js

  1. javascript的typeof返回哪些数据类型

答:1、number(数字类型) 2、boolean(布尔类型) 3、string(字符串类型) 4、undefined 5、object(对象类型) 6、function 7、symbol(es6新增类型)

  1. 例举3种强制类型转换和2种隐式类型转换?

强制转换

var a=“1.5”;

parseint(a);

parsefloat(a);

number(a);

隐式转换

10==“10” 返回true

  1. split() 、join() 的区别

答:split()用于分割字符串,返回一个数组,

join()用于连接多个字符或字符串,返回值为一个字符串;

  1. 数组方法pop()push() unshift() shift()

pop() 删除数组最后一项,没有参数,返回值删除项,原数组改变;

push() 向数组末尾添加新的数组项,返回值新数组的长度,原数组改变;

unshift() 向数组开头位置添加,返回值是新数组的长度,原数组改变;

shift() 删除数组第一项,没有参数,返回值删除项,原数组改变;

  1. 事件绑定和普通事件有什么区别

答:普通事件中的onclick只支持单个事件,会被其他onclick事件覆盖,而事件绑定中的addEventListener可以添加多个事件,而不用担心被覆盖。并且普通方式绑定事件后,不可以取消。addEventListener绑定后则可以用removeEvenListener取消

  1. 如何阻止事件冒泡和事件默认行为

使用event.stopPropagation()起到阻止捕获和冒泡阶段中当前事件的进一步传播。

使用event.preventDefault()可以取消默认事件。

13.window.onload 和document ready的区别

一是ready,表示文档结构已经加载完成(不包含图片等非文字媒体文件);

二是onload,指示页面包含图片等文件在内的所有元素都加载完成。

  1. ”和“=”的不同

表示在比较时不会考虑数据类型 如:2“2”;返回true

=表示在比较时同时会对比数据类型 如:2“2”;返回false

  1. javascript是一门什么样的语言,它有哪些特点?

一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML网页上使用,用来给HTML网页增加动态功能。JavaScript兼容于ECMA标准,因此也称为ECMAScript。

Javascript的特点:

一、简单性:

JavaScript是一种基于Java基本语句和控制流之上的简单而紧凑的设计,从而对于学习Java是一种非常好的过渡。它的变量类型是采用弱类型,并未使用严格的数据类型。

二、动态性:

avaScript是动态的,它可以直接对用户或客户输入做出响应,无须经过Web服务程序。它对用户的反映响应,是采用以事件驱动的方式进行的。所谓事件驱动,就是指在主页(Home Page)中执行了某种操作所产生的动作,就称为“事件”(Event)。比如按下鼠标、移动窗口、选择菜单等都可以视为事件。当事件发生后,可能会引起相应的事件响应。

三、跨平台性:

JavaScript是依赖于浏览器本身,与操作环境无关,只要能运行浏览器的计算机,并支持JavaScript的浏览器就可正确执行。从而实现了“编写一次,走遍天下”的梦想。

四、安全性:

JavaScript是一种安全性语言,它不允许访问本地的硬盘,并不能将数据存入到服务器上,不允许对网络文档进行修改和删除,只能通过浏览器实现信息浏览或动态交互。从而有效地防止数据的丢失。

  1. javascript的数据类型都有什么?

基本数据类型6种:String、boolean、Number、Undefined、Null;

引用数据类型:Object (Array,Date,RegExp,Function)

  1. 输出今天的日期,以yyyy-mm-dd的方式,比如今天是2019年7月19日,则输出2019-07-19

var a=prompt(‘请输入年’);

Var b=prompt(‘请输入月’);

Var c=prompt(‘请输入日’);

Document.write(a+’-’+b+’-’+c);

  1. 谈谈对this的理解

This表示的时当前调用的元素

在构造函数中this表示实例化的对象

在事件中表示的时触发事件的元素

  1. js继承方式及其优缺点

是通过构造函数的原型进行继承,

数据数据共享 减少代码冗余

  1. 同步和异步的区别?

同步:

同步的思想是:所有的操作都做完,才返回给用户。这样用户在线等待的时间太长,给用户一种卡死了的感觉(就是系统迁移中,点击了迁移,界面就不动了,但是程序还在执行,卡死了的感觉)。这种情况下,用户不能关闭界面,如果关闭了,即迁移程序就中断了。

异步:

将用户请求放入消息队列,并反馈给用户,系统迁移程序已经启动,你可以关闭浏览器了。然后程序再慢慢地去写入数据库去。这就是异步。但是用户没有卡死的感觉,会告诉你,你的请求系统已经响应了。你可以关闭界面了。

同步,是所有的操作都做完,才返回给用户结果。即写完数据库之后,在相应用户,用户体验不好。

异步,不用等所有操作等做完,就相应用户请求。即先相应用户请求,然后慢慢去写数据库,用户体验较好。

  1. 箭头函数

箭头函数表达式的语法比函数表达式更简洁,并且没有自己的this,arguments,super或 new.target。这些函数表达式更适用于那些本来需要匿名函数的地方,并且它们不能用作构造函数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值