-
React入门基础概念
jsx react没有采用逻辑和标记语言分离到不同文件,而是采用二者共同存放在组件中 jsx是html和javaScript的結合,是JavaScript的语法扩展 大括号内可以放置任意有效的js代码 <h1>{name}</h1> 建议使用括号包裹jsx代码,避免遇到自动插入分号陷阱 编译后,jsx表达式会被解析成普通的JavaScript函数调用,并对其取值得到对象。也就是说jsx可以作为参数、值等 ...…
-
new运算符到底做了什么
new操作符是一个语法糖new运算符到底做了什么 在内存中创建一个对象 将对象的隐式原型(proto)赋值为构造函数的显式原型(prototype) 将对象的constructor 指向构造函数本身 构造函数内部this指向新对象 执行构造函数内部代码,给新对象添加属性 返回新对象function Foo() { this.name = "limei"}const obj = new Foo()// 上面的代码new干了下面这些事const o = {}o.__proto...…
-
如何通过Jekyll搭建GitHub博客
个人搭建博客总结1.创建一个github仓库 如何创建->新手传送门 仓库名设置为 username.github.io,其中 username 就是你的 github 用户名。2.找一个jekyll模板 我用的是这个网站:http://jekyllthemes.org/ 复制到上一步的仓库里 现在访问 https://username.github.io/, 应该可以看到了3.下载ruby http://www.ruby-lang.org/zh_cn/ 找到对应的安装包...…
-
原型模式
每个构造函数都有一个prototype属性对象,也就是通过new 构造函数 创建的对象的原型,这个对象的优点是上面定义的属性和方法可以被对象实例共享原型模式function Person() {}Person.prototype.age = 20Person.prototype.name = "liMei"let person1 = new Personconsole.log(person1.age) // 20Object.create()Object.create() 如果不传第二个参...…
-
构造函数模式
构造函数 构造函数用于创建特定类型的对象的,如:Object()、Array(),当然也可以自定义 构造函数首字母大写(用于区分) 构造函数不一定是函数声明表达式,也可能是赋值变量表达式 构造函数如果没有传参数,实例化时可不添加括号 如:let person = new Person 构造函数也是函数,任何函数只要用new调用就是构造函数 不指定this指向(不是new或call、apply调用)this只...…
-
js遍历树形结构并合并相同节点
今天看到一道题,如下图,左边的树形结构合相同节点成右边的树形结构。我看了下可以用递归解决。代码如下:interface ITreeIterator { name: string; children: any[]}const arr = [ { name: '1', children: [ { name: '1.1', children: [ { name: '1.1.1', children: [] }, ...…
-
工厂模式
工厂模式用于抽象创建特定对象function createObject(name,age) { let o = new Object() o.name =name o.age = age return o}const obj = createObject("limei",20)…
-
一些收藏的网站
<!DOCTYPE NETSCAPE-Bookmark-file-1>BookmarksBookmarks npm NPM install -save 和 -save-dev 傻傻分不清 - 暗夜余晖 - 博客园 01 ...…
-
mac命令
命令行 sudo vi /etc/hosts // 打开host文件 // 使用国内源安装Homebrew https://gitee.com/cunkai/HomebrewCN /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" vim ./.bash_profile // 打开path路径文件host配置 // git配置 192...…
-
vscode插件PasteImage给md文档添加截图
安装插件如何使用 当前文件夹下 win: ctrl + alt + v // 粘贴剪切版图片到当前文件夹下 mac: command + option + v 自定义文件夹…