JS面试题汇总(一)

1.如何快速复制一份数组数据
  • 通过slice
var arr = [1, 2, 3], copyArr;
copyArr = arr.slice();
  • 通过concat
var arr = [1, 2, 3], copyArr;
copyArr = arr.concat();
2.如何快速删除数组的第二个元素
arr.splice(1,1)
3.如何连接数组转化字符串
arr.join()
4.对原型作用链的理解

原型链是由一些用来继承和共享属性的对象组成的(有限的)对象链。每个对象都有自己的__poto__属性,每一个函数都有自己的prototype原型,而原型对象也是一个对象,他也有自己的原型对象,样就形成了一个由原型对象组成的链,被称为原型对象链。

5.怎么判断一个原型是否是这个对象的原型

使用: Object.prototype.isPrototypeOf()进行比较

var obj1 = {name: "Lilei"};
var obj2 = Object.create(obj1);
obj1.isPrototypeOf(obj2); // true
6.this的指向
  • 普通函数调用 指向全局对象Window
  • 对象函数调用 哪个函数调用,this指向哪里
  • 构造函数调用 指向new出来的实例
  • apply和call调用 apply和call会改变传入函数的this
7.怎么阻止事件冒泡,阻止默认事件
event.stopPopagation()
event.preventDefault()
8.new Data转化为固定格式
var da = new Date();
  var year = da.getFullYear()+'年';
  var month = da.getMonth()+1+'月';
  var date = da.getDate()+'日';
  console.log([year,month,date].join('-'));
9.JavaScript的typeof返回哪些数据类型
  • String
  • Number
  • Boolean
  • Object
  • Function
  • undefined
  • Symbol
10.Split join区别
  • split()用于分割字符串,返回一个数组
  • join()用于连接多个字符或字符串,返回值为一个字符串
  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Shansec~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值