我们都知道,console.log这个函数不属于任何规范,这是宿主环境(浏览器/node)为开发者提供的。我们在代码里面随便console.log都不会报错。但是另一个浏览器提供的调试函数就不同了,它就是copy函数,chrome/safari/firefox都支持。copy函数可以直接在控制台里面用,但是放在非控制台的代码里面会报copy is not a function 的错。
两个函数都不属于任何规范,为什么console.log不会报错,而copy函数只能在控制台里面用呢?
从图片上看,两个函数貌似浏览器内部实现方式也不一样,通常只见过native code , command line api 是什么鬼?
copy函数操作了用户的剪贴板,是一个敏感性操作。因此只能用户自己手动调用。
console.log只是打印日志,不存在安全问题,因此可以随便用。