1.js基本类型

Boolean,Number,String,Null,Undefined,Symbol.

2.null非对象,但是typeof null 返回的是Object,原因遗留下来的一个bug,000开头是对象,而null是000

3.原始类型存储的是值,而对象存储的是地址(指针),函数参数为对象,函数传参是传递对象的指针副本

const a = []
const b = a
p.push(1)
a = [1]
// a,b都代表地址,一个改变都改变

4.typeof

Number,String,Boolean,Function可,

Array,Object,Null不可

5.instanceof(得对象)

6.Object.prototype.toString.call()啥都可以

7.类型转化  下面的=是转换为的意思,并非赋值

Boolean

Number,  0,-0,NaN=false,  其他都是true

String    ' ' = false       其他都是true

undefined unll  false

引用类型    ture

String

Number  5='5'

Boolean.函数,symbol,string    'true'

数组    [1,2]=‘1,2’

对象    ‘[object Object]’  

Number

String  '1'=1  'a'=NaN

数组   空数组=0,只有一个元素的数组[5]=5 其他NaN

null    null=0

出数组外的引用类型  NaN

symbol   抛错

8.四则运算 一方为字符串String,把另外一方转为String

  一方不是String Or Number,则转为

除加法外,一方是Number,另一方转为Number

对象转化为原始类型,调用[[ToPrimitive]]

let a = {valueOf(){return 0 }, toString(){return'1'}}

字符串调用toString,非字符串用valueOf

9.bind,call,apply改变this的指向,

区别,call bind接受的是参数列表,apply接受的是数组

bind返回的是方法()需要调用

10.this的指向问题

(1)普通函数,指向window

(2)构造函数中的this,指向当前构造函数所创建的对象

(3)方法中的this,指向方法所属的对象

(4)事件处理函数中的this,指向事件源,谁调用指谁

function foo(){
console.log(this.a)
}
var a = 1;
foo()//window
const obj = {a:2,foo:foo}
obj.foo//obj
const c = new foo()//c

11.箭头函数没有this,取决于包裹的第一个普通函数,多次bind由第一次决定

12.==。===的区别

判断x==y,首先判断x,y类型相同与否,相同则判断x===y,不同则

面试(JS篇)的更多相关文章

  1. 面试JS篇

    1.闭包 ECMAScript对其进行了简单的描述:允许使用内部函数(即函数定义和函数表达式位于另一个函数的函数体内),而且,这些内部函数可以访问他们所在的外部函数中声明的所有局部变量.参数和声明的其 ...

  2. 好程序员分享Web前端面试题汇总JS篇之跨域问题

    为什么80%的码农都做不了架构师?>>>   好程序员分享Web前端面试题汇总JS篇之跨域问题,接着上一篇文章我们继续来探讨web前端面试必备面试题. 跨域解决方案 1. 通过jso ...

  3. iOS开发--OC调用JS篇

    OC调用JS篇 其中相对应的html部分如下: <html> <header> <meta http-equiv="Content-Type" con ...

  4. 3D拓扑自动布局之Node.js篇

    上篇将3D弹力布局的算法运行在Web Workers后台,这篇我们将进一步折腾,将算法运行到真正的后台:Node.js,事先申明Node.js篇和Web Workers篇一样,在这个应用场景下并不能提 ...

  5. 一个周末掌握IT前沿技术之node.js篇

    一个周末掌握IT前沿技术之node.js篇 http://ittechnical.sinaapp.com/node-js-and-restful-api/ NodeJS入门  http://www.n ...

  6. 十大经典排序算法-JS篇

    http://web.jobbole.com/87968/ 虽然是JS篇,但其他编程语言(例如java)实现起来是差不多的.

  7. 前端面试题 -- JS篇

    前端面试题 -- JS篇 类型 1.js中有哪些数据类型,并解释清楚原始数据类型和引用数据类型 js中共有null,undefined, string,number,boolean,object六种数 ...

  8. 前端面试(原生js篇) - DOM

    根据我的面试经历,一般小公司的面试环节,比较关心框架的熟练程度,以及独立开发组件的能力 但大厂通常有五轮以上的面试,而且对 js 基础语法很是看重 于是我总结了一些关于 js 基础的面试对话,有的当时 ...

  9. 前端面试(原生js篇) - 精确运算

    一.面试题 问:开发的时候有用到过 Math 吗? 答:很多啊.比如生成 GUID 的时候,就会用到 Math.random() 来生成随机数. 问:别的呢?比如向下取整.向上取整? 答:向下取整是  ...

随机推荐

  1. 【Flutter 实战】简约而不简单的计算器

    老孟导读:这是 [Flutter 实战]组件系列文章的最后一篇,其他组件地址:http://laomengit.com/guide/widgets/Text.html,接下来将会讲解动画系列,关注老孟 ...

  2. Hive 报错SemanticException Error in parsing

    以下sql执行时报错SemanticException Error in parsing select clr.id,clr.customer_id,clr,contract_code,clr.cor ...

  3. 02 . 分布式存储之FastDFS 高可用集群部署

    单节点部署和原理请看上一篇文章 https://www.cnblogs.com/you-men/p/12863555.html 环境 [Fastdfs-Server] 系统 = CentOS7.3 软 ...

  4. Web开发HTTP协议知识_常用http方法、http状态码等(前端开发和面试必备))

    http请求由三部分组成,分别是:请求行.消息报头.请求正文. HTTP(超文本传输协议)是一个基于请求与响应模式的.无状态的.应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连 ...

  5. 02.RabbitMQ整合springboot简单使用

    1.添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...

  6. HotSpot的类模型(4)

    我们继续接着上一篇 HotSpot的类模型(3)分析,这次主要分析表示java数组的C++类. 4.ArrayKlass类 ArrayKlass继承自Klass,是所有数组类的抽象基类,类及重要属性的 ...

  7. EOS基础全家桶(十五)智能合约进阶2

    简介 今天我们继续补充智能合约的进阶使用技巧,这次的主题是交易,合约内我们除了可以发起内联action的调用,很多使用还需要直接调用其他的合约action或者以交易的形式调用自身的action. 发起 ...

  8. python numpy indexerror: too many indices for array

    import numpy as np #data 原来数组 #arr_1 新数组 #将data的第一列赋值给arr_1的第一列 arr_1 = np.array((data.shape[0],5)) ...

  9. 数据可视化之powerBI技巧(十六)采悟:PowerBI作图技巧:动态显示可视化标题

    默认情况下,PowerBI图表的标题是静态的,为了增强图表的可读性,通过设置动态标题,可快速展示关键信息.提升沟通效率.本文通过两个简单的例子来看看PowerBI中如何创建动态标题. /01/ 拿之前 ...

  10. Redis 分布式锁(一)

    前言 本文力争以最简单的语言,以博主自己对分布式锁的理解,按照自己的语言来描述分布式锁的概念.作用.原理.实现.如有错误,还请各位大佬海涵,恳请指正.分布式锁分两篇来讲解,本篇讲解客户端,下一篇讲解r ...