至今刷牛客网的JS错题集涉及到的知识点
想了下还是想记录下刷牛客网以来 JS的一些错题,最近觉得好像自己又不是那么理解基础,不然也不会错那么多题了TOT不过有些坑还是要踩吧,还有一些JS知识点的整理,其实之前自己记录的石墨,不过感觉还是不怎么方便吧,还是放在博客里,最近比较忙,不然其实有打算用express+ejs搭一个个人博客,尽量争取时间咯,毕竟每个前端er都会想设计个人的博客hhhh话不多说,开始记录下一些知识点:
javascript的全局函数(那个时候是选了settimeout,但其实settimeout函数是window环境下来着,包括setintervel)

typeof操作符&&instanceof操作符
(1)typeof操作符
格式:result=typeof variable
返回值:
undefined 值未定义
boolean 布尔值
string 字符串
number 数值
object 对象、null
function 函数
(2)instanceof操作符
格式:result=variable instanceof constructor
返回值:
true
false
2. 方法
String.prototype.isString=function(str){ return ((str instanceof String) || (typeof str).toLowerCase() == 'string'); // 两种方法判断是不是字符串 }
3.原理
var str1=new String('str1'); var str2='str2'; console.log(typeof str1);//object 这里因为用了构造函数 new出了一个对象 console.log(typeof str2);//string console.log(str1 instanceof String);//true 对象就可以用instanceof方法判断是不是该类型 console.log(str2 instanceof String);//false 这个只是一个字符串,不能用instanceof方法,只能用typeof方法
块内声明函数
在严格模式下其实在块内声明函数是会报错的,在非严格模式下,如果非要在块内声明函数,则需要用到函数表达式如下
if (x) { var foo = function() {}}
---未完待续---

浙公网安备 33010602011771号