前端知识

一. CSS选择器以及选择器的优先级

1.!important

  1. 内联样式
// style即为内联样式
 <div style="width: 65px;height: 20px;border: 1px solid;">测试元素</div>
  1. ID选择器
  2. 类选择器/属性选择器/伪类选择器
  3. 元素选择器/伪元素选择器
// CSS 伪元素用于设置元素指定部分的样式。
  1. 关系选择器/通配符选择器(0000)

二. 跨域

a. 同源:"协议+域名+端口"三者相同,即便两个不同的域名指向同一个ip地址,也非同源。
b. 同源策略限制:

  • Cookie、LocalStorage、IndexedDB 等存储性内容
  • DOM 节点
  • AJAX 请求发送后,结果被浏览器拦截了

c. 不同源的服务之间相互请求资源,就算作“跨域”。
d. 跨域并不是请求发不出去,请求能发出去,服务端能收到请求并正常返回结果,只是结果被浏览器拦截了。
e. 解决方案:nginx反向代理

三. nginx相关知识

a. nginx:轻量级的HTTP服务器,常用于部署web服务,还可用于服务端的反向代理和负载均衡。
b. 优点:

  • 支持海量高并发,理论可支持到5万并发。
  • 内存消耗少 可商业化 配置简单

c. nginx.conf 文件是nginx总配置文件也是nginx读取配置的入口。
d. 相关命令:

// 先进入nginx.conf的文件目录
> nginx //直接nginx启动,前提是配好nginx环境变量
> nginx  -s stop //立即停止服务
> nginx -s quit // 从容停止服务 需要进程完成当前工作后再停止
> killall nginx //直接杀死nginx进程
> nginx -s reload //重启nginx
> nginx -t //输出nginx.conf syntax is ok即表示nginx的配置文件正确

四. localhost 与 本机ip

  1. localhost是个域名,其指向127.0.0.1. 这个域名/ip只能允许本机访问。
  2. 本机 IP,你可以理解为本机有三块网卡,一块网卡叫做 loopback(这是一块虚拟网卡),另外一块网卡叫做 ethernet (这是你的有线网卡),另外一块网卡叫做 wlan(这是你的无线网卡)。你的本机 IP 是你真实网卡的 IP,具体来说有线无线各有一个,而 127.0.0.1 是那块叫做 loopback 的虚拟网卡的 IP。
  3. 内网,同一条宽带,同一个宽带账号下的多台设备所组成的网络。内网设备之间仅可通过对方本机ip访问。

五. vue 3.0新特性

六. 什么是BFC?BFC的布局规则是什么?如何创建BFC?BFC应用?

概念BFCBlock Formatting Context的缩写,即块格式化上下文。BFCCSS布局的一个概念,是一个环境,里面的元素不会影响外面的元素。
布局规则BoxCSS布局的对象和基本单位,页面是由若干个Box组成的。元素的类型和Display属性,决定了这个Box的类型。不同类型的Box会参与到不同的Formatting Context
创建:浮动元素display:inline-block; position:absolute;
应用:1.分属于不同的BFC时,可以预防margin重叠;2清除内部浮动;3.自适应多栏布局。

七. 闭包

闭包是指有权访问另一个函数作用域中变量的函数。
函数和函数内部能够访问到的变量的总和,就是一个闭包。
作用:间接的访问一个变量,即隐藏一个变量,通过函数去访问。
原理:JS函数的内部可以访问函数外部的变量。在JS函数中声明的变量,会成为函数的局部变量,局部变量的作用域也是局部的,只能在函数内部访问;在JS函数之外声明的变量,会成为全局变量,全局变量的作用域也是全局的。
附: 闭包通俗易懂的讲解

八. ES6常用新语法

  1. Array的扩展运算符(spread):
console.log(...[1, 2, 3])
// 1 2 3
let arr1 = [0, 1, 2];
let arr2 = [3, 4, 5];
arr1.push(...arr2);
  1. 箭头函数
    箭头函数this为付作用域的this,不是调用时的this;
    箭头函数没有原型属性;
  2. 新增新的数据结构Set,类似数组,但成员的值是唯一的,没有重复的值;
  3. 新增新的数据结构Map,本质上是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。
const map = new Map([
  [k1, '张三'],
  ['title', 'Author']
]);
map.size // 2
map.has(k1) // true
map.get('title') // "张三"
map.set('title', '老虎')
  1. 新增原始数据类型Symbol,表示独一无二的值。它是Javascript语言的第七种数据类型,前六种是:undefined 、null 、 Boolean 、 String 、 Number 、 Object.
// 常用使用方式
// 1. 做唯一的值
const log = {};
log.levels = {
  DEBUG: Symbol('debug'),
  INFO: Symbol('info'),
  WARN: Symbol('warn')
};
console.log(log.levels.DEBUG, 'debug message');

// 2. 做唯一的常量
const COLOR_RED    = Symbol();
const COLOR_GREEN  = Symbol();
function getComplement(color) {
  switch (color) {
    case COLOR_RED:
      return COLOR_GREEN;
    case COLOR_GREEN:
      return COLOR_RED;
    default:
      throw new Error('Undefined color');
    }
}
  1. const定义常量,ket定义变量,弃用var。具有块级作用域。

九. 原型、原型链

原型:对象中固有的_proto_属性,该属性指向对象的prototype原型属性。
原型链:当我们访问一个对象的属性时,如果这个对象内部不存在这个属性,那么它就会去它的原型对象里找这个属性,这个原型对象又会有自己的原型,于是就这样一直找下去,也就是原型链的概念。原型链的尽头一般来说都是Object.prototype所以这就是我们新建的对象为什么能够使用toString()等方法的原因。
特点:JavaScript对象是通过引用来传递的,我们创建的每个新对象实体中并没有一份属于自己的原型副本。当我们修改原型时,与之相关的对象也会继承这一改变。

十. this指向

this对象是执行上下文中的一个属性,它指向最后一次调用这个方法的对象,在全局函数中,this等于window。

十一. typeod、instanceof

  1. typeof主要用来判断数据类型,返回值有string、boolean number function object undefine,常用typeof xxx === undefined表示已申明但未赋值的变量;
  2. instanceof判断对象是谁的实例;
  3. null表示空对象,undefined表示已在作用域中声明但未赋值的变量。
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,378评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,356评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,702评论 0 342
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,259评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,263评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,036评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,349评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,979评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,469评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,938评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,059评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,703评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,257评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,262评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,485评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,501评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,792评论 2 345

推荐阅读更多精彩内容