源码
第1题
(1) Number()
Number() 函数将对象参数转换为表示对象值的数字。如果该值无法转换为合法数字,则返回 NaN。
1
| console.log(Number(true), Number(null), +undefined)
|
(2)Boolean()
1
| console.log(Boolean('100'), Boolean(100), Boolean(null), !!undefined)
|
(3)parseInt()
- 函数可解析一个字符串,并返回一个浮点数
- 注意: 字符串中只返回第一个数字。
- 注意: 开头和结尾的空格是允许的。
- 注意: 如果字符串的第一个字符不能被转换为数字,那么 parseFloat() 会返回 NaN。
1
| console.log(parseInt(123.6), parseInt(0b1011011), parseInt(0X2A), parseInt(0X2A, 8))
|
(4)parseFloat()
- 函数解析字符串并返回浮点数。
- 注意:只返回字符串中的第一个数字!
- 注释:允许前导和尾随空格。
- 注释:如果第一个字符不能转换为数字,parseFloat() 返回 NaN。
1
| console.log(parseFloat('123.6'), parseFloat('100px'), parseFloat(010))
|
(5)eval()
eval() 函数计算 JavaScript 字符串,并把它作为脚本代码来执行。
1
| console.log(eval('87*99+2'))
|
(6)isNaN()
- isNaN() 函数可确定值是否为非数字(Not-a-Number)。
- 如果该值等于 NaN,则此函数返回 true。否则返回 false。
- 此函数不同于 Number 特定的 Number.isNaN() 方法。
- 全局 isNaN() 函数将测试值转换为数字,然后对其进行测试。
- Number.isNaN() 不会将值转换为数字,并且不会为任何非数字类型的值返回 true。
1
| console.log(isNaN(null), isNaN('123'), isNaN('abc'), isNaN('a1b2c3'))
|
第2题
(1)
1 2 3 4 5 6
| var arr1 = [] console.log(arr1, arr1.length) var arr2 = [1, 2, 3] console.log(arr2[0], arr2.length) var arr3 = new Array() console.log(arr3[1], arr3.length)
|
(2)
shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。
1 2
| arr2.shift(); console.log(arr2)
|
第3题
1 2 3 4
| var date = new Date(); var hours = date.getHours(); var minutes = date.getMinutes(); console.log(hours + ':' + minutes)
|
第4题
(1)
1 2 3 4 5
| var reg1 = /^\d{4}$/ console.log(reg1.test('1234'), reg1.test('1a34'), reg1.test('12345') )
|
(2)
- i 是一个修饰符 (搜索不区分大小写)。
- [abc] 查找方括号之间的任何字符。
- [^abc] 查找任何不在方括号之间的字符。
- [0-9] 查找任何从 0 至 9 的数字。
- [a-z] 查找任何从小写 a 到小写 z 的字符。
- [A-Z] 查找任何从大写 A 到大写 Z 的字符。
- [A-z] 查找任何从大写 A 到小写 z 的字符。
- [adgk] 查找给定集合内的任何字符。
- [^adgk] 查找给定集合外的任何字符。
- (red|blue|green) 查找任何指定的选项。
- \d 查找数字。
- n$ 匹配任何结尾为 n 的字符串。
1 2 3 4
| var reg2 = new RegExp("^[sp]\\d{1,4}$", "i"); console.log(reg2.test('p123'), reg2.test('1234'), reg2.test('S10'))
|
(3)
1 2 3 4
| var reg3 = /^(133|153|189|180)\d{8}$/ console.log(reg3.test('13380281109'), reg3.test('17880281109'), reg3.test('15300000000'))
|
第5题
- substring() 方法用于提取字符串中介于两个指定下标之间的字符。
- substring() 方法返回的子串包括 开始 处的字符,但不包括 结束 处的字符。
- lastIndexOf() 从后向前搜索字符串,并从起始位置(0)开始计算返回字符串最后出现的位置。
1 2 3 4
| var QQEmil = "2445631968@qq.com" var number = QQEmil.lastIndexOf("@"); var QQ = QQEmil.substring("", number) console.log(QQ)
|
第6题
- random获取随机数floor(x)
- 对 x 进行下舍入。
1 2
| var m = Math.floor(Math.random() * 3 + 1) console.log(m)
|
第7题
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| var x = 1;
function A(y) { var x = 2;
function B(z) { console.log(x + y + z) }
return B }
var C = A(2) C(3)
|