Setcina(目前还在更新以及完善中...)

JS的内存管理

javascript
简介像C语言这样的底层语言一般都有底层的内存管理接口,比如 malloc()和free()。相反,JavaScript是在创建变量(对象,字符串等)时自动进行了分配内存,并且在不使用它们时“自动”释放。 释放的过程称为垃圾回收。这个“自动”是混乱的根源,并让JavaScript(和其他高级语 ...
Read more

关于JS的设计模式那些事儿

javascript
在程序设计中有很多实用的设计模式,而其中大部分语言的实现都是基于“类”。 在JavaScript中并没有类这种概念,JS中的函数属于一等对象,在JS中定义一个对象非常简单(var obj = {}),而基于JS中闭包与弱类型等特性,在实现一些设计模式的方式上与众不同。 本文基于《JavaSc ...
Read more

13-React中的this.setStates是同步还是异步的

React.js
执行setState()的位置? 在react控制的回调函数中: 生命周期勾子 / react事件监听回调 非react控制的异步回调函数中: 定时器回调 / 原生DOM事件监听回调 / promise回调 /… 异步 OR 同步? react相关回调中(生命周期回调、事件监听回调): 异 ...
Read more

02 React Hooks中父组件调用子组件的方法

React Hooks
1.子组件中的使用首先,在子组件中,需要将方法暴露给父组件的useRef调用,需要使用 useImperativeHandle 这个方法,下面我们构造一个子组件12345678910111213141516171819/* child子组件 */// https://reactjs.org/ ...
Read more

浅拷贝和深拷贝的区别

javascript
一 数据类型数据分为基本数据类型(String, Number, Boolean, Null, Undefined,Symbol)和引用数据类型。 基本数据类型的特点:直接存储在栈(stack)中的数据 引用数据类型的特点:存储的是该对象在栈中引用,真实的数据存放在堆内存里 引用数据类型 ...
Read more

WebView上软键盘的兼容方案

聊天项目,过程中踩过一个大坑:输入框获取焦点,软键盘弹起,要求输入框吸附(或顶)在输入法框上。需求很明确,看似很简单,其实不然。 问题: 在 Android 和 IOS 上,获知软键盘弹起和收起状态存在差异,且页面 webview 表现不同。 在IOS12 上,微信版本 v6.7.4 及以 ...
Read more

01-造react轮子并发布测试

NPM
什么叫做造轮子看现在的软件发展趋势,越来越多的基础服务能够“开箱即用”、“拿来用就好”,越来越多的新软件可以通过组合已有类库、服务以搭积木的方式完成。这是趋势,将来不懂开发语言的人都可以通过利用现有软件组件快速构建出能解决实际问题的软件产品。 在这种趋势下,软件(服务)就慢慢演化为两极: 满 ...
Read more

01-display:flex

CSS
2009年,W3C 提出了一种新的方案—-Flex 布局,可以简便、完整、响应式地实现各种页面布局。目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。 Chrome Opera Firefox safari IE 12+ 12.1+ 22+ 6.1+ ...
Read more

01-React Hooks 是什么

React Hooks
Hook简介Hook 是 React 16.8 的新增特性。它可以让你在不编写 class 的情况下使用 state 以及其他的 React 特性。 e.g 123456789101112131415import React, { useState } from 'rea ...
Read more

快速切换以及管理node包

Work Experience
前言为什么需要快速切换以及管理node包?在我们的日常工作,并不仅仅只是开发新项目,用到新技术,还有一些旧的项目需要维护。那么就有一个问题了,现在前端大部分的开发都是基于node提供的环境下,而node日新月异,难免会有新版本不支持旧版本的情况。所以,这就需要我们快速的切换以及管理node包 ...
Read more
Prev Next