漆黑菌的博客

也许面向工资编程才是先进生产力的发展方向...

科学使用npm、yarn、node和nvm

问题 npm、yarn和nvm指令有时会遇到些不可抗力问题。 nvm是解决node版本不兼容导致项目无法启动问题的node版本管理工具 方法 给npm设置代理 启动 $ npm config set proxy http://server:port $ npm config set https-proxy http://server:port 取消 npm confi...

写给自己看的前端开发神器Emmet使用手册

Emmet是干啥的?为什么要用Emmet 在前端开发过程中,重复代码片段是比不可少的。Emmet就是一款生成HTML+CSS代码片段的神器。初识Emmet是在VS code上,因为没有发现自带HTML摸板……去问怎么快速生成。回答曰,!+Tab键即可。这就是因为VS code中内置了Emmet,而!+Tab也就是Emmet快速生成<!DOCTYPE html>代码片段的快捷键。 ...

关于vue的面试总结

vue生命周期 先上官方生命周期图 由此可见主要有8个生命周期:beforeCreate和created,beforeMount和mounted,beforeUpdate和updated,beforeDestory和destoryed。 beforeCreate创建前状态 在实例初始化之后,数据观测和暴露了一些有用的实例属性与方法。 实例初始化————new Vue() 数据观测———...

如何实现一个简单的模板字符串填充方法

题目要求 提供一个摸板字符串和一组数据,返回一个渲染完毕的字符串。 方法一:用解析字符串,提取关键字,用关键字去data中取数据。 let data:object = { name:'二狗', sex:'男' } let str: string = '姓名:${name},性别:${sex},年龄:${age}' f...

如何用js实现一个简单的四则运算计算函数

别人的版本 考虑了括号,使用了递归,看上去比较靠谱。 function parse(content){ //寻找最后一个左括号 var index = content.lastIndexOf("("); //如果等式中有左括号 if(index > -1){ //寻找右括号,从左...

JavaScript中的浅拷贝和深拷贝

浅拷贝与深拷贝 在JavaScript中,对于Object和Array这类引用类型值,当从一个变量向另一个变量复制引用类型值时,这个值的副本其实是一个指针,两个变量指向同一个堆对象,改变其中一个变量,另一个也会受到影响。 这种拷贝分为两种情况:拷贝引用和拷贝实例,也就是我们说的浅拷贝和深拷贝 浅拷贝(shallow copy) 拷贝原对象的引用,这是最简单的浅拷贝。 // 对...

JavaScript中的如何区别object和array

JavaScript中如何区别object和array 首先这个问题其实是开放性的,答案多种多样,目前来看是个考察水平深度的好问题。 实用的方法 jQuery和es5中其实是提供了isArray函数的,有就用自带,没有就自己实现。 jQuery实现版:相对比较复杂考虑了多种情况。 var class2type = {}; isArray: Array.isArray ||...

JavaScript中的四种相等判断

由ES6中Set唯一性判断想到的

ES6中的新数据结构Set Set可以说是Java中的老朋友了,去重非常好用,而且JavaScript中的Set用法和表现也很接近于Java中的set。 新建Set和添加内容至Set Set 函数可以接受一个数组(或者具有 iterable 接口的其他数据结构)作为参数,用来初始化。通过add方法向 Set 结构加入成员,结果表明 Set 结构不会添加重复的值。 const se...

微信开发之路(二)

vux获取本地图片IOS适配

版本文档不一致 vux算得上是vue微信端开发神器了,非常符合国情。内置了jssdk的插件,但是目前有个小问题,vux中自带的JSSDK插件使用的是1.3.2版本(2018年9月30日),官网的JSSDK版本已经是1.4.0了。在JSSDK文档中明确提到iOS新版webview内核应使用获取本地图片接口来做本地预览功能,并在新版的IOS适配指南指出需要在页面中可通过微信注入的window.w...

linux学习之路(六)

总结一些常用vps脚本

安装常见HTTPS证书: apt-get install ca-certificates 申请泛域名: wget https://raw.githubusercontent.com/nanqinlang-script/acme/master/acme_2.0.sh bash acme_2.0.sh 探针: wget -N --no-check-certifica...