Bamboo Blog

未来的你,一定会感谢现在拼命努力的自己

面经总结-JS

面经总结系列

ES6 模块与 CommonJS 的区别 CommonJS 模块输出的是一个值的拷贝,就算导出的值变了,导入的值也不会改变,所以如果想更新值,必须重新导入一次。运行时加载; ES6 模块输出的是值的引用,导入导出的值都指向同一个内存地址,所以导入值会跟随导出值变化。静态加载 继承 组合继承:优点在于构造函数可以传参,不会与父类引用属性共享,可以复用父类的函数,但是也存...

面经总结-HTML+CSS

面经总结系列

什么是标签语义化?有什么意义? 根据内容的结构化(内容语义化),选择合适的标签(代码语义化)便于开发者阅读,写出更优雅的代码的同时让浏览器的爬虫和机器很好地解析。 像标题(H1~H6)、列表(li)、强调(strong em) 在没有 CSS 的情况下,页面也能呈现出很好地内容结构、代码结构; 有利于 SEO:和搜索引擎建立良好沟通,有助于爬虫抓取更多的有效信息:爬虫依赖于标...

数据结构-链表

链表经典题目

203. 移除链表元素 删除链表中等于给定值 val 的所有节点。 输入: 1->2->6->3->4->5->6, val = 6 输出: 1->2->3->4->5 var removeElements = function(head, val) { let newHead = new ListNode()...

JavaScript手撕代码合集

总结一下面试常考的手撕代码

深拷贝 JSON.parse(JSON.stringify(object)) 有局限性,会忽略 undefined 和 symbol function isArray(arr) { return Object.prototype.toString.call(arr) === "[object Array]"; } function deepCopy(obj) { let...

关于Vue的一些知识点

总结一下关于Vue的一些知识点

最近一直在搞 Vue 项目,整了一段时间,项目的基本功能算是完善了。项目地址:ymatou,有兴趣的小伙伴可以瞧瞧指点一下,顺便点个星星就再好不过了,啊哈哈哈。 今天有空来总结一下关于 Vue 的一些知识点 1.v-if 和 v-show 区分使用场景 v-if 是真正的条件渲染,因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建;也是惰性的:...

MongoDB常用命令

总结一下MongoDB中的常用命令

最近一直在搞项目,好久没有更新博客了。恰巧一直在用 MongoDB,今天有空来汇总一下 MongoDB 中的常用命令。 什么是 MongoDB MongoDB 是由 C++语言编写的,是一个基于分布式文件存储的开源数据库系统。 MongoDB 旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。 MongoDB 将数据存储为一个文档,数据结构由键值(key=>val...

JavaScript面向对象编程

总结一下JS面向对象的知识点

数据类型 : 字符串,数字,布尔值 (基本类型) 对象、数组、函数(复合类型) 赋值操作 基本类型 : 只是把值进行赋值操作(传值)。 复合类型 :把对象的地址进行赋值操作(传址)。 数组的拷贝 var a = [['a','b'],2,3]; var b = a.concat(); //自带的concat和slice默认是浅拷贝 var b = a.sli...

JavaScript正则表达式

总结一下正则表达式的用法

正则表达式(Regular Expression,在代码中常简写为 regex、regexp 或 RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。搜索模式可用于文本搜索和文本替换。 语法 /正则表达式主体/修饰符(可选) var re = /a/; // 在两个斜线之间的字符串是不需要添加引号的 var re = new RegExp('a'); //...

JavaScript中数组常用方法总结

总结一下JS中常用的数组方法

数组是一种特殊类型的对象,在 JavaScript 中对数组使用 typeof 运算符会返回 “object”,数组就是一个集合。 创建数组 1. var arr = ['a','b','c','d']; //出于简洁、可读性和执行速度的考虑,建议使用此方法 2. var arr = new Array('a','b','c','d'); 多维数组 var arr = [...

JavaScript中的闭包和匿名函数自执行

总结一下闭包和匿名函数自执行的一些问题

1.闭包 闭包就是能够读取其他函数内部变量的函数。例如在 javascript 中,只有函数内部的子函数才能读取局部变量,所以闭包可以理解成“定义在一个函数内部的函数“。在本质上,闭包是将函数内部和函数外部连接起来的桥梁。 闭包通常用来创建内部变量,使得这些变量不能被外部随意修改,同时又可以通过指定的函数接口来操作;闭包就是有权限访问另一个函数内部作用域的变量的函数。 举个栗子 ...