前端笔试题杂记(一)

目录

一些废话

一、选择题涉及知识点

1.JS的数据类型

 2.this的用法

3.call和apply

4.typeof

5.JS可以通过什么实现跨域

6. promise的三种状态?如何转换?

7.ES6箭头函数(Arrow Function)

8.NaN属性

9.JS中的assign()方法

10.CSS选择器优先级

11.清楚浮动的方式有哪些?

12.GET、POST、HEAD、PUT、DELETE请求方法

二、JS编程题(V8引擎)

JavaScript写算法题的输入输出格式

1.无重复字符的最长字串

2.给定字符串中的最长回文子串

总结


一些废话

感觉人生就是起起落落落落落......

经历了保研落榜,考研落榜,那就开始找工作吧......

三月份一边做毕设,一边开始了春招的投投投......

说到前端,要说最会的那就是使用VueJs写写前端项目,要是说基础还真的不行,所以现在在疯狂补补补啊,努力吧蜡笔笔笔小新新❤


一、选择题涉及知识点

我还没有底气投大厂,今天是找工作路上第一个笔试,就杂七杂八的记录一下吧。

这一套笔试题分为三个部分:20道单选题、10道多选题以及两道编程题。

1.JS的数据类型

值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol。

引用数据类型:对象(Object)、数组(Array)、函数(Function)。

注:Symbol 是 ES6 引入了一种新的原始数据类型,表示独一无二的值。

 2.this的用法

1.在一般函数方法中使用 this 指代全局对象

2.作为对象方法调用,this 指代上级对象

3.作为构造函数调用,this 指代new 出的对象

4.apply 调用 ,apply方法作用是改变函数的调用对象,此方法的第一个参数为改变后调用这个函数的对象,this指代第一个参数

3.call和apply

JavaScript中的每一个Function对象都有一个apply()方法和一个call()方法。

call 和 apply 都是为了改变某个函数运行时的 context 即上下文而存在的,换句话说,就是为了改变函数体内部 this 的指向。
call 和 apply二者的作用完全一样,只是接受参数的方式不太一样。

方法定义

apply:Function.apply(obj,args)方法能接收两个参数,obj这个对象将代替Function类里this对象,args这个是数组或类数组,apply方法把这个集合中的元素作为参数传递给被调用的函数。

call方法与apply方法的第一个参数是一样的,只不过第二个参数是一个参数列表。

在非严格模式下当我们第一个参数传递为null或undefined时,函数体内的this会指向默认的宿主对象,在浏览器中则是window。

4.typeof

typeof 运算符把类型信息当作字符串返回。

typeof 返回值有六种可能: "number," "string," "boolean," "object," "function," 和 "undefined."

5.JS可以通过什么实现跨域

URL 原因 是否允许通信
http://www.a.com/dir/index.html 同一域名下 允许
http://www.a.com/dir2/index.html 同一域名下,不同文件夹 允许
http://www.a.com:8080/dir/index.html 同一域名,不同端口 不允许
https://www.a.com/dir/index.html 同一域名,不同协议 不允许

用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据。只要协议、域名、端口有任何一个不同,都被当作是不同的域。

要解决跨域的问题,我们可以使用以下几种方法:详细戳链接

方法一:通过JSONP跨域

JSONP包含两部分:回调函数和数据。 回调函数:当响应到来时要放在当前页面被调用的函数。 数据:就是传入回调函数中的json数据,也就是回调函数的参数了。JSONP虽然很简单,但是有如下缺点:安全问题(请求代码中可能存在安全隐患);要确定jsonp请求是否失败并不容易。

方法二、通过document.domain+iframe来跨子域(只有在主域相同的时候才能使用该方法)

浏览器同源策略限制:(1)不能通过ajax的方法去请求不同源中的文档。 (2)浏览器中不同域的框架之间是不能进行js的交互操作的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值