JS 数组克隆方法总结

ES5 方法总结

slice

1
2
3
4
5
let arr = [2,4,434,43]
let arr1= arr.slice()
arr[0] = 'a'
console.log(arr,arr1) // [ 2, 4, 434, 43 ]
console.log(arr1 === arr) // false

阅读全文

前端周刊-2018年09月第3周

编写「可读」代码的实践

链接:
http://taobaofed.org/blog/2017/01/05/writing-readable-code/

阅读全文

前端开发规范-used by frank

js方法注释规范

规范的注释很重要

代码是写给人看的,顺便给机器运行,多谢注释可以增加代码的可读性

阅读全文

VsCode读取项目文件的Eslint规则 保存时自动修复格式错误

配置:

安装VsCode的EsLint和vetur插件
为项目安装EsLint包

注意要安装在开发环境上,还有就是如果你使用的是脚手架的话,选了Eslint选项,会自带这些包。

阅读全文

学会使用Graphviz绘制流程图

一、初识Graphviz

1.1 简介

阅读全文

Ant Design Pro总结篇

一、简介

1.1 ant pro系统特性

    阅读全文

    前端周刊-2018年09月第2周

    es6常用基础合集

    url:https://www.jianshu.com/p/cfb0893c34f1
    知识点:

    let,const
    箭头函数
    模板字符串
    解析结构
    函数默认参数
    展开运算符
    对象字面量与class
    Promise

    阅读全文

    reactjs中事件传参(关于event)

    问题描述

    我们在事件中通常需要获取控件的值,通常通过event.target.value的方式来取值,在绑定事件时,event参数也不需要传递,在方法中直接使用即可。
    但是,有些时候需要传入一些其他的参数,比如需要循环绑定一些输入框,在绑定onChange事件时,需要传入索引index和数据源的索引进行对应

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    onHandleChange(index,event){
    let val=event.target.value
    }
    //关键代码
    source.map((item,index)=>{
    return <input type="text" value={item.name}
    onChange={this.onHandleChange.bind(this,index)} />
    });
    ```

    #### 代码解释
    有的同学应该已经看出区别了,onHandleChange在声明时有两个参数,但在调用时却只传递了一个参数,这就是今天要讲的:

    > **在给方法传递新参数时,方法原有的参数会排在新参数之后**

    做过reactjs的同学都知道,event这个参数是不需要手动传递的,直接在方法中声明就可以使用,如下代码:
    ```jsx
    onChangeHandle(event){
    let val=event.target.value;
    }

    render(){
    return (<div>
    <input type="text" onChange={this.onChangeHandle.bind(this)} />
    </div>)
    }

    阅读全文

    前端开发周刊-(2018年09月第2周)

    es6常用基础合集

    url:https://www.jianshu.com/p/cfb0893c34f1
    知识点:

    let,const
    箭头函数
    模板字符串
    解析结构
    函数默认参数
    展开运算符
    对象字面量与class
    Promise

    阅读全文

    使用umi改进dva项目开发

    一、Umi简介

    一个可插拔的企业级 react 应用框架。umi 以路由为基础的,以及各种进阶的路由功能,并以此进行功能扩展,比如支持路由级的按需加载。然后配以完善的插件体系,覆盖从源码到构建产物的每个生命周期

    阅读全文