美文网首页
面试题(day-2)

面试题(day-2)

作者: LaBaby_ | 来源:发表于2017-07-20 21:31 被阅读0次

1 ,什么是闭包?闭包有什么好处?使用闭包要注意什么?

闭包:函数嵌套函数,内部函数可以引用外部函数的参数和变量,变量和参数不会被垃圾回收机制所回收
好处:1)希望一个变量长期驻扎在内存之中
2)避免全局变量的污染
3)私有成员的存在
注意:可能会造成内存泄漏

2,在js中通过typeof能弹出的数据类型有哪些

number,string,boolean,function,object,undefined

3,arr.pop(),arr.push()有什么区别

arr.pop();//从数组最后面一个数字删除,返回被删除的数字
arr.push()//从数组最后面添加一个数字,返回添加之后数组的长度;

4 ,常见字符串方法,数组方法,数学方法.

//字符串方法
str.charAt()
str.toLowerCase()
str.toUpperCase()
str.indexOf()
str.laseIndexOf()
str.substring()
str.split()
//数组方法
arr.push()
arr.unshift()
arr.pop()
arr.shift()
arr.join()
arr.splice()
arr.reverse()
arr.concat()
arr.sort()
//数学方法
Math.random()
Math.pow()
Math.sqrt()
Math.abs()
Math.floor()
Math.ceil()
Math.round()
Math.max()
Math.min()
5,怎样判断浏览器类型是ie6?

if(window.navigator.userAgent.toLowerCase().indexOf('msie 6.0')!=-1){
alert('是ie6');
}
6,get和post的区别

1.Post传输数据时,不需要在URL中显示出来,而Get方法要在URL中显示。
2.Post传输的数据量大,可以达到2M,而Get方法由于受到URL长度的限制,只能传递大约1024字节.
3.Post顾名思义,就是为了将数据传送到服务器段,Get就是为了从服务器段取得数据.而Get之所以也能传送数据,只是用来设计告诉服务器,你到底需要什么样的数据.Post的信息作为http请求的内容,而Get是在Http头部传输的。
get 方法用Request.QueryString["strName"]接收
post 方法用Request.Form["strName"] 接收
注意:
虽然两种提交方式可以统一用Request("strName")来获取提交数据,但是这样对程序效率有影响,不推荐使用。
一般来说,尽量避免使用Get方式提交表单,因为有可能会导致安全问题

7,cookie,localStorage和sessionStorage有什么区别?

共同点:都是保存在浏览器端,且同源的。

区别:

  • cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递。而sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。
  • cookie数据还有路径(path)的概念,可以限制cookie只属于某个路径下。
  • 存储大小限制也不同,cookie数据不能超过4k,同时因为每次http请求都会携带cookie,所以cookie只适合保存很小的数据,如会话标识。sessionStorage和localStorage 虽然也有存储大小的限制,但比cookie大得多,可以达到5M或更大。
  • 数据有效期不同,sessionStorage:仅在当前浏览器窗口关闭前有效,自然也就不可能持久保持;localStorage:始终有效,窗口或浏览器关闭也一直保存,因此用作持久数据;cookie只在设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭。
  • 作用域不同,sessionStorage不在不同的浏览器窗口中共享,即使是同一个页面;localStorage 在所有同源窗口中都是共享的;cookie也是在所有同源窗口中都是共享的。

8,封装一个获取随机整数的函数
<script>
//n,m的随机数封装
function rnd(n,m){
return Math.floor(Math.random()*(m-n)+n);
}
</script>

9.javascript是面向对象的,怎么体现javascrip
的继承关系?

  • 属性 父级构造函数.apply(this,arguments);
  • 方法 子级构造函数.prototype=new 父级构造(); 子级构造函数.prototype.constructor=子级构造;

10,怎样创建,添加(2种)和删除元素
//创建元素ele表示创建元素的标签名document.createElement(ele);//添加//从后面添加oParent.appendChild(要添加的元素)//从前面添加oParent.insertBefore(要添加的元素,添加到谁的前面);//要删除的元素oParent.removeChild(要删除的元素)

11,设置属性的方法有哪些?

  • "." 操作已存在的属性
  • "[]"可以接收变量,"."能操作的,"[]"都可以操作
  • setAttribute(name,value)设置自定义属性

12.列举for/for in 二种循环方法的区别和优缺点。
forfor(初始化; 条件; 自增){ 语句}快不能遍历对象的属性for in for(初始化 in object){ 语句}慢可以遍历对象的属性

13,描述typeof与instanceof,constructor的区别是什么?
typeof 检测基本数据类型Instanceof 检测复合类型constructor 检测构造函数

14,javascript中出现undefined的情况有哪些?

  • 1,函数没有返回值,或者返回值为空,出现undefined
  • 2,变量定义了未赋值;
  • 3,引用没有提供实参函数形参的值,出现undefined4,查询一个对象属性或者数组元素的值不存在,出现undefined"="表示赋值 例如a=1;相当于把1赋值给a"=="表示比较,会做类型转化,然后再进行比较"==="表示严格比较,不会做类型转化注:关于具体区别,后续文章会继续跟进

15,数组和字符串如何进行相互转换?
arr.join()将数组转化成字符串str.plit()将字符串转化成数组

16,你知道的排序方法有哪些?
归并排序,快排,冒泡排序,选择排序

相关文章

  • 用头部效应就业

    微习惯500字Day-2网站优化 Day-2一条B2B信息Day-2 1.就业 新毕业的小倩通过1锁定高价值,排除...

  • 面试题(day-2)

    1 ,什么是闭包?闭包有什么好处?使用闭包要注意什么? 闭包:函数嵌套函数,内部函数可以引用外部函数的参数和变量,...

  • 不能遗忘的都在左边

    字/一朵 Day-2 打卡

  • Day-2 噜噜

    Day-2 LINUX 基本命令 命令结构 command -option 参数 系统操作 free 查看内存...

  • python学习目录

    一、python基础 Day-1 - MarkDown语法 Day-2 - python基础语法 1.认识pyth...

  • 『学习打卡 Day-2』2017.11.13

    『学习打卡 Day-2』2017.11.13 【长期目标】1、做一名翻译 2、出国留学(韩国或日...

  • Day-2

    文/陈柳彤 早晨给尿憋醒,又昏昏沉沉睡过去 中午十一点半醒来收拾好东西然后退房,等了二十分钟左右司机送我们去机场,...

  • day-2

    一、基本知识    1.python属于解释型语言;解释型语言,是在运行的时候将程序翻译成机器语言,所以运行速度相...

  • Day-2

    起大早来到公司,日复昨日的汗流浃背. 今天明显比昨天要适应很多 广告公司加班好严重啊啊啊 list:一篇关于智能售...

  • DAY-2

网友评论

      本文标题:面试题(day-2)

      本文链接:https://www.haomeiwen.com/subject/mnsrkxtx.html