摘要:
使用React开发应用程序时,如果多个组件需要共享数据,可以把数据放到父组件中,通过属性向下传递给子组件。但当组件嵌套较深时,两个最底层的组件要想共享数据,那就霜要把数据放到最顶层的组件中,然后再一层一层向下传递,可能需要向下传递好多层才能到达想要数据的子组件,这就产生了一个问题,由于经过的这些层( 阅读全文
摘要:
npx create-react-app react-intl-demo && cd react-intl-demo,创建react-intl-demo项目。npm install react-intl, 安装react-intl。使用react-intl时, 首先要提供一个provider,把整个 阅读全文
摘要:
React中ref是一个对象,它有一个current属性,可以对这个属性进行操作,用于获取DOM元素和保存变化的值。什么是保存变化的值?就是在组件中,你想保存与组件渲染无关的值,就是JSX中用不到的或不显示到页面上的值,比如setTimeout的返回的ID,就可以把这个值放到ref中。为什么要放到r 阅读全文
摘要:
JS是在浏览器中运行的,浏览器为了运行JS, 必须要编译或解释JS,因为JS是高级语言,计算机不认识,必须把它编译或解释成机器语言,其次,在运行JS的过程,浏览器还要创建堆栈,因为程序是在栈中执行,执行过程中的创建的对象是在堆中。浏览器的JS引擎,比如V8,就是做这些事的。JS引擎负责编译或解释JS 阅读全文
摘要:
双端队列就是队列的头尾两端都能进行插入和删除的队列,而普通的队列只能在头部删除,尾部插入。双端队列的英文名是deque, double-end queue. 实现双端队列最好使用双向链表,因为在双向链表中,链表中每一个节点,都能指向它的前一个节点和后一个节点,只操作一个节点,就能进行插入和删除操作, 阅读全文
摘要:
Webpack是一款模块打包工具,可以把多个文件打包成一个或几个文件,它不仅能打包JS文件, 还能打包css, image等静态资源。当然,在默认情况下,它只打包JS文件和JSON文件,因为它只认识JS文件和JSON文件。 mkdir webpack-demo cd webpack-demo npm 阅读全文
摘要:
路由的概念,可以想像一下路由器,当来了一个请求时,路由器做了什么事情?它会把请求的IP地址和路由表进行匹配,匹配成功后,进行转发,直到目标主机。可以看到路由有三部分组成,一个是请求,一个是路由表,一个是匹配转发。对应到前端路由也是一个道理,只不过前端路由是拦截请求,显示不同的页面内容。首先要发起请求 阅读全文
摘要:
队列,就是排队,先到的站前面,先离开,后到的排后面,后离开。对应到计算机中,就是添加元素在队尾,删除元素是在队头,先进先出或后进后出。添加元素也叫入队(enqueue),删除元素也叫出队(dequeue)。当然还可以查看队头元素,队中元素个数,以及是否为空,所以队列提供了API 就是enqueue, 阅读全文
摘要:
希尔排序也是一种插入排序,不过,它在进行比较和交换位置的时候,不是相邻元素之间的比较,而是具有一定的间隔之间的元素进行比较。这个间隔是多少呢?一般刚开始排序的时候,是数组长度的1/2. 比如有一个长度是13的数组,那么间隔是13/2,就是6. 比较的时候,由于是插入排序,它是间隔索引后面的元素和间隔 阅读全文