分享好友 最新动态首页 最新动态分类 切换频道
js面试题
2024-12-26 21:00

1. 截取字符串abcdefg的efg
alert('abcdefg'.substring(4));

2. 写出3个使用this的典型应用
事件: 如onclick  this->发生事件的对象
构造函数          this->new 出来的object
call/apply        改变this

3. JavaScript中如何检测一个变量是一个String类型?请写出函数实现
typeof(obj) == 'string'
obj.constructor == String;

4. 请说出三种减低页面加载时间的方法
  1、压缩css、js文件
  2、合并js、css文件,减少http请求
  3、外部js、css文件放在最底下
  4、减少dom操作,尽可能用变量替代不必要的dom操作

5. 什么是FOUC?你如何来避免FOUC?
  由于css引入使用了@import 或者存在多个style标签以及css文件在页面底部引入使得css文件加载在html之后导致页面闪烁、花屏
用link加载css文件,放在head标签里面

6. 文档类型的作用是什么?你知道多少种文档类型?
  影响浏览器对html代码的编译渲染
  html2.0
  xHtml
  html5

7. 请解释什么是Javascript的模块模式,并举出实用实例。
  js模块化mvc(数据层、表现层、控制层)  seajs   命名空间

8. 如何组织自己的代码?是使用模块模式,还是使用经典继承的方法?
  对内:模块模式
  对外:继承

9.  你如何优化自己的代码?
     代码重用   避免全局变量(命名空间,封闭空间,模块化mvc..)拆分函数避免函数过于臃肿

10. 12.请尽可能详尽的解释AJAX的工作原理。
  创建ajax对象(XMLHttpRequest/ActiveXObject(Microsoft.XMLHttp))
  判断数据传输方式(GET/POST)
  打开链接 open()
  发送 send()
  当ajax对象完成第四步(onreadystatechange)数据接收完成,判断http响应状态(status)200-300之间或者304(缓存)执行回调函数

11. js的继承模式: call()

     基类:

 子类: 

使用:

 

12.form中的input有哪些类型?  

text:文本框
password:密码框
radio:单选按钮
checkbox:复选框
file:文件选择域
hidden:隐藏域
button:按钮
reset:重置按钮
submit:表单提交按钮
image:图片按钮,类似submit可以为按钮添加图片...

13 列举javaScript的3种主要数据类型,2种复合数据类型和2种特殊数据类型。

主要数据类型:string, boolean, number

复合数据类型:function, object

特殊数据类型: Null 空对象 Undefined 未定义

14. undefined 和null 的区别和注意点

1、如果用 “==” 进行比较,他们是相等的,因为比较的是值

2、区分他们有两种方法(他们的核心都是比较他们的 数据类型)

  1)使用typeof 将他们区分开 , typeof(null)=object

  2)使用全等“===”  :比较的是 值和 数据类型,只有全都相同 才返回 true

14. js中对象继承的方法: prototype,  构造函数, .call , apply实现继承

prototype:

构造函数:

call , apply实现继承

 15 浏览器的对象模型

window,方法: alert, prompt, confirm, open, close,

document方法: write,

history,方法, back, forward, go

location:方法 href

navigator,navigator.cookieEnabled:该属性表示是否启用cookie

screen,screen.width/screen.height:表示显示器的分辨率(总的宽度,高度)

16. 超链接的属性target取值: _blank, _parent, _self, _top

17. js的常用对象: String, Math, Date和Array对象

18. .innerHTML,innerText,outerHTML,innerText的区别

19 form中的input可以设置为readonly和disable,请问2者有什么区别?
  readonly不可编辑,但可以选择和复制;值可以传递到后台
  disabled不能编辑,不能复制,不能选择;值不可以传递到后台

20.js中的3种弹出式消息提醒(警告窗口,确认窗口,信息输入窗口)的命令式什么?
alert
confirm
prompt

20. JS最经典的全局变量和局部变量的问题:

100  10  100 

结论, js执行前对所有生命进行分析, 第6行声明了局部变量, 所以函数内部的a都指向这个变量, 所以先输出100.

this.a指向函数的调用者, 即window, 所以显示10

第三个输出局部变量100

 

undefined  10

第4行, 局部变量只解析声明, 不解析赋值, 所以第三行局部变量的值是undefined

下面赋值了局部变量,所以10

 

 100  10  10

var声明的是局部变量 , 第4行是全局变量, 外面赋值100,所以显示100

第二个, 全局变量改成10, 所以10, 

第三个, 全局变量a的值必须是10

21. JS的类型识别:  4种:typeof、Object.prototype.toString、constructor和instanceof

typeof可以识别标准类型(Null除外),不能识别具体的对象类型(Function除外)

Object.prototype.toString可以识别标准类型以及内置对象类型,不能识别自定义类型

constructor是对象原型上面的一个属性,它指向构造器本身,constructor可以识别标准类型(Undefined/Null除外),可以识别内置对象类型,可以识别自定义对象类型

instanceof可以识别内置对象类型,不能识别原始类型,可以识别自定义对象类型

 

 

最新文章
银行卡多长时间逾期会有什么后果
在日常生活中采用银行卡实施消费和借贷已经成为了一种普遍现象。在享受便利的同时也必须留意按期还款否则可能将会带来一系列严重的影响。本文将详细介绍银行卡逾期的不同情况及其可能产生的结果。当银行卡逾期在一个月内时,这类情况被称为
做游戏网站需要多少钱/平台推广公众平台营销
硬盘里面有很多磁头,每个磁头有很多环,类似跑道。称为柱面:0柱面 1柱面;跑道里面有很多块称为扇区:扇区0  扇区1。硬盘操作的耗时主要在磁盘转换的时候,如果我们一会读1磁头,一会写2磁头
百度百万蜘蛛池,探索搜索引擎优化中的神秘力量,百度百万蜘蛛池搭建
百度百万蜘蛛池是一种用于搜索引擎优化的技术,通过搭建蜘蛛池,可以吸引更多的搜索引擎爬虫访问网站,提高网站权重和排名。这种技术通过模拟大量用户访问网站,增加网站的流量和曝光率,从而提升网站的知名度和商业价值。需要注意的是,蜘
辽宁网络网站搭建与优化策略解析,企业品牌影响力提升之道
本文深入探讨了辽宁地区网络网站搭建与优化策略,旨在帮助企业提升品牌影响力。通过分析优化关键词、提升用户体验、增强搜索引擎排名等方面,提供了一系列实操建议,助力企业打造高效、专业的网络平台。辽宁网络网站搭建策略辽宁网络网站优
湖南关键词推广革新,助力区域品牌引擎升级
湖南省通过优化关键词推广策略,致力于提升区域品牌影响力,打造全新品牌发展引擎,以创新推广手段推动地方经济和文化品牌的崛起。随着互联网技术的飞速发展,网络营销已经成为企业推广产品和服务的重要手段,在众多营销策略中,关键词推广
天猫抽检被处罚怎么办?提交复检申诉的条件
2019年11月20日陈菲100天猫各大类目代入驻绿通,天猫超市 ,猫享自营代入驻,天猫大药房,京东POP,京东自营代入驻,天猫店添加品牌类目,天猫店铺考核不达标处理,天猫店铺主体变更,抖音,得物入驻,天猫,京东,抖音,得物,快手等网络
小米手机获取 Root 权限教程(详细图文) – MIUI历史版本
常说的 Root 手机指的是获取 Android 系统超级用户权限,目的大多为了卸载 OEM 厂商预装软件,或者运行需要 Root 权限的软件,例如聊天防撤回、虚拟定位、权限控制等。在获取 Root 权限后如果平时授权管理不当,会增加手机安全风险,因此只
新浪微博转发关注推广外包,找X传播平台
新浪微博转发关注推广外包,找X传播平台新浪微博转发关注推广外包,找X传播平台X传播,国内最全的社会化媒体营销平台,帮助您在百科,论坛,新闻,问答,博客,微博,微信,美丽说,豆瓣,开心,人人等社会化媒体渠道进行全面的推广。X传播
游戏排行榜第一名手游推荐 2024受欢迎的手游合集
今天小编要给大家聊一下游戏排行榜第一名,咱们知道,现在游戏界挺流行搞排名的,那些排在前面的游戏,不只是画面做得像电影一样吸引人,它们的故事讲得动听,玩法也特别有创意,有的甚至火到出了好多好玩的周边产品。所以,小编就来给大家
词令如何把链接生成关键词打开?
词令是一款关键词口令直达工具。打开词令,输入口令,直达该口令关联的目标。网址转成口令后,就可以通过词令,输入口令,打开口令关联的目标网址。口令打开网址体验口令是:vip88,请打开词令App或词令官网,输入口令【 vip88 】,搜索直
相关文章
推荐文章
发表评论
0评