牛客上的JS刷题笔记 2020/6/8
第一题
在JavaScript中 =是赋值运算符 ==是关系运算符 &&是逻辑运算符
第二题
在我们的JavaScript中number存在精度的问题, 比如0.2+0.4不等于我们的0.6,结果可能是0.6000000000000001,想要得到正确的结果0.6,可以通过如下代码: parseFloat(0.2 + 0.4).toFixed(1); 遇到这道题,自己想到了以前在Number对象当中学到的三个比较难记的方法,分别是toFixed、toExponential()、toPrecision(),下面对三个方法做简单的介绍: 1.toExponential() 返回一个数字的指数形式的字符串 2.toFixed() 返回指定小数位数的指定形式 3.toPrecision() 返回一个指定精度的数字
第三题
正则表达式中的exec()方法,它是RegExp对象的方法,可以用来检测一个字符串,结果返回一个数组。 exec() 方法检索字符串中的指定值。返回值是被找到的值。如果没有发现匹配,则返回 null。
第四题
match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。 match() 方法将检索字符串 String Object,以找到一个或多个与 regexp 匹配的文本。这个方法的行为在很大程度上有赖于 regexp 是否具有标志 g。如果 regexp 没有标志 g,那么 match() 方法就只能在 stringObject 中执行一次匹配。如果没有找到任何匹配的文本, match() 将返回 null。否则,它将返回一个数组,其中存放了与它找到的匹配文本有关的信息。
第五题
题目的结果是true true false,根据下图来熟悉常见的值的Boolean和Number的转换 1.显然结果一为true 2.结果二要注意一下优先级,判断[]==false, 看到==需要将左右转换为boolean值,为0==0结果true 3.结果三是 (NaN == 0) ? true : false 结果为false
第六题
这个题目考的是省份证的正则表达式的写法,正确答案是: isIDCard=/^[1-9]d{7}((0d)|(1[0-2]))(([0|1|2]d)|3[0-1])d{3}$/; 能看懂就行,不必会写
第七题
这个题目考察的是方法append和appendTo两个方法,appendTo这个方法容易忽略,方法详细描述如图:
第八题
ES6中,有哪几大基本的数据类型 ?正确答案是? Number String Boolean Null Undefined Symbol
第九题
判断对象myObj是否存在的写法,下面说法错误的是? myObj === null的值不能判断myObj是否存在,因为对象定义或者为定义都可能为false
