摘要:
这可能是一种反爬虫策略,通过在js源码中加入 debugger,强制在 dev tool 中打断点,使得开发者无法使用 dev tool 分析网页结构或网络流量。 Chrome 和 Firefox 它们的 Breakpoint 只有两个选项 使用 Safari 可以解决 打开 Safari 的开发者 阅读全文
摘要:
双问号 ?? 作用:如果给定变量值为 null 或者 undefined,则使用双问号后的默认值,否则使用该变量值 abc?.details.efg?.name?.text ?? '-' 参考: ES新提案:双问号操作符 双感叹号 !! 作用:判断某个变量是否存在。第一个 ! 作用于变量,使其转换为 阅读全文
摘要:
先说结论: 在 Typescript 的对象中使用扩展运算符(三个点...),有很大可能会使整个对象的类型检查失效。 示例代码 type BirdBasicType = { wings: number; name: string; }; type eyePropsType = { eyeInfo: 阅读全文
摘要:
点乘 又称向量内积,输入两个向量,输出一个标量(实数)。 公式: 向量内积表示了两个向量“对齐”的程度: 易知,两个向量互相垂直时,他们的内积为零。 叉乘 又称向量外积,输入两个向量u,v,输出一个与他们都垂直的向量uxv。 向量外积仅在三维空间中有定义,因此它依赖于右手螺旋定则,即右手四指从u转向 阅读全文
摘要:
获取 unix 时间戳 std::time_t result = std::time(nullptr); 或者: const auto p1 = std::chrono::system_clock::now(); std::cout << "seconds since epoch: " << std 阅读全文
摘要:
前言 在进入这篇文章之前应该学会:C++ hello world编译过程 本文代码来自:Lab 1 - OpenCV 的安装和使用 代码 #include <opencv2/opencv.hpp> using namespace cv; int main(int argc, char* argv[] 阅读全文
摘要:
main.cpp #include <iostream> int main(int argc, char* argv[]){ std::cout << "hello world" << std::endl; } 编译四步 1️⃣preprocessing, 2️⃣compilation proper 阅读全文
摘要:
1. 函数对象 函数是对象 函数原型链: 函数对象 ➡️ Function.prototype ➡️ Object.prototype 每个函数对象都有3个隐藏属性:上下文、函数代码、prototype。 prototype 是一个拥有constructor 属性且值即为函数本身的对象。 函数作为对 阅读全文
摘要:
对象 JavaScript 的简单数据类型有:number, string, boolean, null, undefined, 其它一切值都是对象。 对象是可变的键控集合(keyed collections),它是属性(k-v)的容器。 k:非空字符串,v:undefined 之外的任意值。 对象 阅读全文
摘要:
注释 不建议使用, 因为可能同时出现在正则表达式内: /* */ 建议使用: // 数字 只有一种数字类型: 64位浮点数(double)。 指数: 100 = 1e2. NaN: 一个不正常的数值运算结果,不等于任何值,isNaN(num). Infinity: 所有大于 double 类型数值范 阅读全文