佛脚

  • 1.HTML5新增内容有哪些
  • 2.es6新特性
  • 3.数组方法
  • 4. js常见问题

1.HTML5新增内容有哪些

  1. 语义化标签(header,footer,nav,article)
  2. video,audio标签
  3. 增加了表单元素 从(form,textare,select,button) ----> ( text,password,radio,checkbox,dile,submit,reset )
  4. 新增cavans echarts就是基于canvas实现的
  5. 增加了新的api localStorage,seessionStorage,本地储存解决方案

2.es6新特性

  1. const let
  2. 箭头函数
  3. 结构赋值
  4. 函数参数默认值
  5. for …of 和 for…in
    对于对象来说:
    只能用for in
 let  obj = {name:"1",age:"2"
}
for (let item in obj){console.log(item)    //  name   ; age
}

对于数组来说:
都可以用 for in 是下表 ,for of 是 值

let arr = [ "a","b","c"  ]
for (let item in arr ){console.log(item)    //  1 2 3
}
for (let item of arr ){console.log(item)    //  a b c
}

  1. es6中新增加了类
    es5中可以使用原型链实现,其实class也是一种语法糖
    class 必须有constructor属性,如果你不手动定义,他就会自己定义,constructor就是构造方法
    类中的this 指的就是实例化对象

Let与var与const的区别
1.var声明的变量会挂载在window上,而let和const声明的变量不会:
2.var声明变量存在变量提升,let和const不存在变量提升
3.let和const声明形成块作用域
4.同一作用域下let和const不能声明同名变量,而var可以

变量提升
《你不知道你js》讲的很好

var a = 1

在上面这段代码中 其实不是一个直接生命复制的操作
实际会看成两个操作
var a 和 a= 1

  1. 第一个定义声明是在编译阶段进行的。
  2. 第二个赋值声明会被留在原地等待执行阶段。

let 和const 存在变量提升吗 存在 但是因为暂存性死区 // 这个复杂了 还没全搞明白

3.数组方法

  1. push() 从后面添加元素,返回值为添加完后的数组的长度
  2. arr.pop() 从后面删除元素,只能是一个,返回值是删除的元素
  3. arr.shift() 从前面删除元素,只能删除一个 返回值是删除的元素
  4. arr.unshift() 从前面添加元素, 返回值是添加完后的数组的长度
  5. arr.splice(i,n) 删除从i(索引值)开始之后的那个元素。返回值是删除的元素
  6. arr.concat() 连接两个数组 返回值为连接后的新数组
  7. str.split() 将字符串转化为数组
  8. arr.sort() 将数组进行排序,返回值是排好的数组,默认是按照最左边的数字进行排序,不是按照数字大小排序的
  9. arr.reverse() 将数组反转,返回值是反转后的数组
  10. arr.slice(start,end) 切去索引值start到索引值end的数组,不包含end索引的值,返回值是切出来的数组
  11. arr.forEach(callback) 遍历数组,无return 即使有return,也不会返回任何值,并且会影响原来的数组
  12. arr.map(callback) 映射数组(遍历数组),有return 返回一个新数组 。
  13. arr.filter(callback) 过滤数组,返回一个满足要求的数组
  14. arr.jion() 方法用于把数组中的所有元素放入一个字符串。 类似与java中的to String

4. js常见问题

  1. Json如何新增/删除键值对
    添加 json [ " wangkun "] = “帅”
    删除 delete json["wangkun "]

  2. 什么是面向对象请简述
    面向对象是一种编程思想
    封装,继承,多态,
    比如vue中的观察者模式 就是面向对象的一种 定义了一个新的类 通过 subscriber 手机方法 通过publish发布方法,其实他就是一种面向对象的编程思想,react中的类组件,也是一种面向对象编程的方法 (我觉得)

  3. 普通函数和构造函数的区别
    普通函数有具名函数,匿名函数,一般通过传参数调用,
    构造函数约定一般用大写具名表达,是对象的模板,通过new关键字构建势力对象,new Array new Object构造函数中的this指的就是实例的实例化对象 promise也是一个构造函数

  4. 简述,原型,原型链,继承
    构造函数和原型,原型链
    每个函数都有自己prototype属性 指向它的原型对象,而原型对象的constructor就是他的实例化对象
    在一个实例化对象中 你要调取其中的某个属性或者方法 就会先从你的构造函数中的找 如果没有找到 他就会在你的构造函数的原型对象上继续找是不是有这个属性 (引擎会给你找) 如果 还没找到 就是找原型对象的构造函数 如果还没找到就找这个构造函数的原型对象 一直找 一直找 找到window 还找不到 在找不到 就成了undefined
    这就是原型链

  5. Promise
    peomise

  6. 请简述async的用法
    async await

  7. jsonp

概念:一种解决跨域问题的方法(非官方)
工作机制:利用动态创建一个script标签并利用它的src属性向服务器发送一次http请求,并提前声明好一个回调函数,以参数的形式。callback加声明的函数名,后段接受后,会讲返回的callback的值名称,把response数据以js的方式返回回来,前段通过参数接受后段返回的值,这就是jsonp

2021日准备面试突击报佛jio相关推荐

  1. 全网首发?蚂蚁金服内部共享—1658页《Java面试突击核心讲》

    又是一年一度的 "金九银十" 秋招大热门,为助力广大程序员朋友 "面试造火箭",小编今天给大家分享的便是这份蚂蚁金服内部的面试神技--1658页<Java ...

  2. 马士兵内部资料—《Java面试突击核心讲》共1658页

    而如今金九银十即将到来,想要跳槽的小伙伴,和想要在金九银十中大放异彩的朋友们如何才能做得更好呢?不要想着现在还不到八月份还处在懒惰的状态,不要想着临时抱佛脚想着面试前的狂补, 这样想的话你就大错特错了 ...

  3. MyBatis面试突击

    MyBatis是一个优秀的基于Java持久层框架,内部它是封装了JDBC,让开发者不用过多的关心什么创建连接.加载驱动啊等等.如今大企业越来越多用MyBatis,为什么它越来越被广泛应用,以前流行的S ...

  4. Redis面试突击串讲 --图灵

    Redis面试突击串讲 什么是Redis Redis(Remote Dictionary Server) 是一个使用 C 语言编写的,开源的高性能非关系型(NoSQL)的键值对数据库. 与传统数据库不 ...

  5. 2021年Java面试题目最新总结【90%面试会踩的坑】

    学会java技术之后大家面临的最多的问题就是面试这关,求职面试java岗位是否能够成功是直接影响我们的工作机会的,所以对于Java程序员面试你准备好了吗?今天小编汇总了一下关于Java程序员面试,90 ...

  6. 「视频版」当线程池溢出之后,程序会奔溃吗?面试突击 007 期

    哈喽,大家好,我是老王,欢迎来到第 7 期的 Java 面试突击. 本文的面试题是,当线程池的任务溢出之后,程序会奔溃吗? 这个问题问的是关于线程池的任务数超过线程池的承载能力之后,会出现什么情况? ...

  7. HashMap 为什么会导致 CPU 100%?文章看不懂?来看这个视频吧!——面试突击 006 期...

    无论是在实际工作中还是在面试中,HashMap 无疑是使用频率最高的知识点之一,所以我们需要搞懂每一个关于 HashMap 的知识点才行. 哈喽,大家好,我是老王,欢迎来到 Java 面试突击,我们今 ...

  8. 面试突击 005 | Redis 是如何实现高可用的?它的实现方式有哪些?「视频版」

    这是我的第 35 篇原创文章 作者 | 老王(javacn666) 这部视频的录制.剪辑.做 PPT.写文稿大约花费了 5 个小时的时间,希望这种形式能被更多的人喜欢,希望这篇文章会给你带来更多的价值 ...

  9. 面试突击 004 | 如何排查 Redis 中的慢查询?视频实战篇

    这是我的第 34 篇原创文章 作者 | 老王(javacn666) 1 面试题 如何排查 Redis 中的慢查询? 2 涉及相关问题 Redis 中有没有慢查询排查工具或者相关排查手段? 慢查询日志都 ...

最新文章

  1. 【Qt】qt打印文件名、函数名、行号
  2. IP数据报-格式-分片
  3. 启动namenode报错:Journal Storage Directory /var/bigdata/hadoop/full/dfs/jn/dmgeo not formatted
  4. MATLAB imshow之后在四周加上边框
  5. 一步一步写算法(之线性队列)
  6. CCF201412-2 Z字形扫描(解法二)(100分)【废除!!!】
  7. 使用jquery 动态操作添加/删除tr td
  8. 【优化调度】基于matlab粒子群算法求解梯级水电站调度优化问题【含Matlab源码 767期】
  9. 【20211208】【Python】UCI数据集的简单介绍和使用Python保存UCI数据集为.mat文件
  10. 微信小程序图片缓存问题
  11. adb shell中的am pm命令
  12. 如何用html实现文件下载
  13. android应用商店完整版源码
  14. take their time用法
  15. dataframe保存为txt_如何快速将TXT转换为SRT文件
  16. 推荐一个免费的论文查重检测软件PaperRight
  17. 2010互联网第一件大事件——谷歌退出中国内地
  18. 阿里妈妈展示广告召回之多场景建模算法
  19. 飞思卡尔 k60/k64 移植FreeRTOS+USB
  20. vertical-align属性的运用及注意事项

热门文章

  1. 视频+讲义:大流量高并发互联网应用实践在线峰会资料全公开
  2. xp系统打开计算机硬盘分区,如何对XP硬盘进行分区? xp系统中的硬盘分区方法...
  3. 劳务网策划书(初稿)
  4. 移动支付市场前景如何?让我们用数据讲话。。。
  5. 推荐几本有关软件测试的书籍
  6. python如何做混合模型面板回归_面板Tobit模型探究(二):模型讲解以及stata实现...
  7. java的学习--第二章 java流程控制
  8. 共享经济发展风口传统广告转型共享广告
  9. Linux 强制卸载挂载点---fuser 命令详解
  10. Linux系统基础一