2019面试题

本文深入探讨了JavaScript中的null与undefined的区别,详细解析了ES6新增特性如let、const及变量解构赋值,并介绍了Promise和async/await等异步编程方案,帮助读者掌握现代JavaScript的核心概念。

1.null和undefined的区别?

null: Null类型,代表一个空的对像指针,使用typeof运算得到 “object”,所以你可以认为它是一个特殊的对象值。

undefined: Undefined类型,当一个声明了一个变量未初始化时,得到的就是undefined。

总结:undefined是访问一个未初始化的变量时返回的值,而null是访问一个尚未存在的对象时所返回的值。因此,可以把undefined看作是空的变量,而null看作是空的对象。

2.生命周期?

https://blog.youkuaiyun.com/qq_43267350/article/details/91354146

3.es6的了解?

let
const
变量的结构赋值

let
1.用来声明变量,但只在let命令所在的的代码块有效

{
  let a = 10,
  var b = 1;
}
console.log(a)----a is not defined
console.log(b)-----  1

2.不存在变量提升

console.log(foo);  ------ undefined
var foo = 2;

console.log(fo);  ------- 报错
let fo = 2;

3.不允许重复声明

---------let不允许在相同的作用域内,重复声明一个变量---------------
function fun () {
  let a = 10;
  var a = 1;
}
function fun () {
  let a = 10;
  let a = 1;
}

const命令
const声明一个只读的常量,一旦声明,常量的值就不易改变

const PI = 3.1415;
PI = 3; -----报错

ES5: 只有两种声明变量的方法 var fuction
ES6: var function let const import class

变量的结构赋值
从数组和对象中提取值,对变量进行赋值

let a = 1;
let b = 2;
let c = 3;

let[a,b,c] = [1,2,3]

4.es7,es8的了解?

先空着

5.promise的理解?

promise异步编程的一种解决方案
两个特点
(1)对象的状态不受外界影响,对象代表一个异步操作,pending(进行中)、fulfilled(已成功)和rejected(已失败)三种状态
(2)一旦状态改变,就不会在变,任何时候都能得到两种结果

     pending----->fulfilled
     pending----->rejected
----------------基本用法--------------------
const promise = new Promise(function(resolve, reject) {
  // ... some code

  if (/* 异步操作成功 */){
    resolve(value);
  } else {
    reject(error);
  }
});

6.async await的理解?

前端异步流程工具
https://mp.youkuaiyun.com/mdeditor/89360445#

7.什么是无状态组件?

空着

8.多组件优化?

空着

9.react15跟16的区别?

空着

10.vue和react区别?

空着

11.ajax跟fetch比较

空着

12.关于node.js?

空着
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值