睫毛上残留的泪 2022-05-04 13:56:19
const nums1 = [1, 2, 2, 1]; const nums2 = [2, 2]; const nums = nums1.filter(v => nums2.some(w => w === v)) console.log(nums)
之前的错了,更新一下,感觉可以
const nums1 = [1, 2, 2, 1]; const nums2 = [2, 2]; const doit = (array1, array2) => { const tmp = [...array2]; // 避免修改array2,使函数doit变得纯洁 return array1.filter(v => { const index = tmp.indexOf(v); if(index > -1) { tmp.splice(index, 1); return true; } return false; }) } console.log(doit(nums1, nums2))
睫毛上残留的泪 2022-05-04 13:48:38
@mqyqingfeng 大大,console.log(0 == "n")为什么是等于true?Number('n')没搞明白为什么等于0,不是说如果有一个字符不是数字,结果都会返回 NaN么?为啥Number('n')不是等于NaN
我建议你直接看ES规范文档里列出来的StringNumericLiteral语法,String转Number本来就是一件很复杂的事情,不知道从哪个博客传出来的字母和数字混合就直接NaN
这种说法,规范文档里重来没这么描述过,规范的明确表示是——“If the grammar cannot interpret the String as an expansion of StringNumericLiteral, then the result of ToNumber is NaN.”(如果String语法不符合StringNumericLiteral拓展的形式,就返回结果NaN
);
从StringNumericLiteral的拓展语法来看,七种空格字符WhiteSpace,四种换行符LineTerminator出现在数字文本StrNumericLiteral的前后都是符合情况的,而空白字符单独出现也是语法情况之一,至于其他的形式还有二进制0b
,八进制0o
,十六进制0x
;以及包含科学计数法的十进制小数形式(e
和E
)等,例如1.23E8
这种,也是符合语法规定的。
- 共 1 页
- 1
如果A 与 B 建立了正常连接后,从未相互发过数据,这个时候 B 突然机器重启,问 A 此时处于 TCP 什么状态?如何消除服务器程序中的这个状态?(超纲题,了解即可)
第 17 题:A、B 机器正常连接后,B 机器突然重启,问 A 此时处于 TCP 什么状态?