三小记(2)
概要
- 如何查看或生成本地的ssh key
- 立即执行函数的this指向谁
- typeof NaN返回什么
如何查看或生成本地的ssh key
- 列出当前电脑用户目录下的
.ssh
目录的所有文件
ls ~/.ssh
如果有id_rsa
、id_rsa.pub
文件,说明之前已经生成过了。如果是空的,说明未生成过。
- 生成一个
ssh key
。 生成ssh key最简单的命令如下,不接受反驳。
ssh-keygen
按下enter,它会依次询问你是否按照默认的存在用户目录下的.ssh目录,要不要密码等。一路enter,不要密码。
ssh-key命令会生成两个文件,一个是id_rsa,表示私钥;一个是id_rsa.pub,表示公钥。pub即是public的意思。
- 查看 通过以下命令可以在终端查看,当然,也可以在文件管理器中查看(用文本编辑器打开),在终端查看公钥命令如下:
cat ~/.ssh/id_rsa.pub
立即执行函数的this指向谁
首先,遇到this
指向的问题,我想第一步要确定的东西是很明确的:是箭头函数,还是普通函数,还是绑定函数(call
、apply
、bind
)。
所以这里也是一样的:如果立即执行函数里面的是一个普通函数,那么毫无疑问:在浏览器中this
指向全局对象Window
,因为立即执行函数的调用者始终是全局对象;如果立即执行函数里面的是箭头函数,那就指向包裹箭头函数的第一个普通函数的this
。
var obj = {
arrowInside: function() {
(()=>{
console.log(this)
})()
},
normalInside: function() {
(function() {
console.log(this)
})()
}
}
obj.arrowInside() // {arrowInside: ƒ, normalInside: ƒ}
obj.normalInside() // Window {parent: Window, opener: null, top: Window, length: 0, frames: Window, …}
typeof NaN返回什么
返回"number"
typeof 0 // "number"
typeof NaN // "number"
typeof Infinity // "number"