面试题总结

废话!!!:最新刷的面试题,已经刷完了,结果惨不忍睹啊,基础知识忘得很快,这次就来总结一下这些题目的知识点吧。
下面说的常用,仅限于本人工作中的常用哈,有需要直接去MDN查看更多。

JS基础

JS概念于类型检测

	1.typeof运算符返回值:(8种)
    undefined、object、Boolean、number、string、bigInt、symbol、function
    例如:
        typeof {"x":1} =》 object
        typeof [{x:1}] =》 object
        typeof null =》 object
        typeof NaN =》 number
    2.instanceof判断引用类型,typeof判断基本类型
   	 	instanceof 表示某个变量是否是某个对象的实例
        最新的 ECMAScript 标准定义了 8 种数据类型:
        7 种原始类型,使用 typeof 运算符检查:
            undefined:typeof instance === "undefined"
            Boolean:typeof instance === "boolean"
            Number:typeof instance === "number"
            String:typeof instance === "string
            BigInt:typeof instance === "bigint"
            Symbol :typeof instance === "symbol"
            null:typeof instance === "object"
        Object:typeof instance === "object"。
    3.JavaScript中数据类型:
        (1)数据类型分为基本数据类型和引用数据类型
		(2)JavaScript一共有8种数据类型
		(3)Object是引用数据类型,且存储于堆(heap)和栈(stack)中
		(4)BigInt是可以表示任意精度整数的基本数据类型,存储于栈(stack)中

逻辑判断

	1.以下返回true
		1.Symbol.for('a') === Symbol.for('a')
			返回由给定的 key 找到的 symbol,否则就是返回新创建的 symbol。
		2.console.log(false == '')
		3.![] == ''
	2.浏览器环境下,以下打印结果为true的是
		console.log ([1,2,3] === [1,2,3])

Math

	1.如何把 7.25 四舍五入为最接近的整数
		Math.round(7.25)
	2.可以产生0 <= num <= 10的随机整数
		Math.floor(Math.random()*11)
		Math.ceil(Math.random()*10)
		Math.random() :一个浮点型伪随机数字,在0(包括0)和1(不包括)之间。
		Math.floor() 返回小于或等于一个给定数字的最大整数。
		Math.ceil() 函数返回大于或等于一个给定数字的最小整数。

JSON

	1.JSON.stringify()将一个 JavaScript 对象或值转换为 JSON 字符串;

数组

	1.改变原有数组方法
		push():将一个或多个元素添加到数组的末尾,并返回该数组的新长度。
		sort():对数组的元素进行排序,并返回数组。
		shift():方法从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度。
		splice():方法通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容。
		pop():方法从数组中删除最后一个元素,并返回该元素的值。此方法更改数组的长度。
		一句话,改变原有数组长度的就会改变原有数组,貌似说了句废话,,hhhhhhhh红红火火恍恍惚惚
	更多内容可查看:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array

正则

	1.常用RegExp对象的方法
		test():执行一个检索,用来查看正则表达式与指定的字符串是否匹配。返回 true 或 false。
		exec():方法在一个指定字符串中执行一个搜索匹配。返回一个结果数组或 null。
	2.去除变量str中的所有空格
		str.replace(`/\s*/g,""`)

其他

1.JavaScript的全局函数:
	https://www.runoob.com/jsref/jsref-obj-global.html
2.编写高性能JavaScript
	1. 遵循严格模式:"use strict"
	2. 将js脚本成组打包,减少请求,尽量减少使用闭包
	3. 使用非阻塞方式下载js脚本,最小化重绘(repaint)和回流(reflow)
3.有关JavaScript中系统方法的描述
	1.parseFloat方法:该方法将一个字符串转换成对应的小数
	2.escape方法: 该方法返回对一个字符串编码后的结果字符串
	3.eval方法:该方法将某个参数字符串作为一个JavaScript执行题
4.有webkit内核的浏览器:
	1.Chrome
	2.Safari
	3.搜狗浏览器
5.获取形式为 2017-08-01 形式的日期
var formatDate = function (date) {
    var y = date.getFullYear();
    var m = date.getMonth() + 1;
    m = m < 10 ? '0' + m : m;
    var d = date.getDate();
    d = d < 10 ? ('0' + d) : d;
    return y + '-' + m + '-' + d;
};
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值