cchroot's blog


  • 首页

  • 文章树

  • 分类

  • 标签

  • 关于

  • javascript

  • vue.js

  • react.js

  • node.js

  • java

  • linux

  • arithmetic

  • tool

翻译——30秒内即可理解的js代码片段

发表于 2018-03-17 | 分类于 javascript
该分享来自于 Github 用户 Chalarangelo,目前已在 Github 上获得了 15k+的Star,精心收集了几十个有用的 JavaScript 代码片段,这些精简有效的代码可以让我们在 30 秒甚至更少的时间内理解经常用到的JS基础算法!翻译多有不准确之处,感兴趣的童鞋可以自行到Github上查看英文原版:github查看原文点这里。 Anagrams of string(带有重复项)使用递归。对于给定字符串中的每个字母,为字母创建字谜。使用map()将字母与每部分字谜组合,然后使用reduce()将所有字谜组合到一个数组中,最基本情况是字符串长度等于2或1。123456const anagrams = str => { if (str.length <= 2) retu ...
阅读全文 »

用 webpack 打包一个简单的 todo Demo

发表于 2018-03-17 | 分类于 vueJs
本次学习案例基于某客网的教学视频,这里记录一下加深自己的学习印象以及方便以后查找,感兴趣的童鞋可以自行观看视频:点这里 这里只讲 webpack 配置,所以直接贴配置代码就好啦,相关配置都有注释,如果参考学习的话可只看webpack.config.js: 目录结构: package.json: 12345678910111213141516171819202122232425262728293031323334353637{ "name": "vue-ssr-tech", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test ...
阅读全文 »

重温——作用域与闭包

发表于 2018-03-11 | 分类于 javascript
有兴趣的童鞋,还可以看看闭包相关的另一篇文章,读书笔记你不知道的javascript作用域与闭包 “准备工作”——执行上下文中完成了哪些工作?很多童鞋可能不知道什么是执行上下文,也就是执行上下文环境,即javscript引擎会在解释 JavaScript 代码之前首先对其进行编译。编译阶段中中的一部分工作就是找到所有的声明,并用合适的作用域将它们关联起来。也正是词法作用域的核心内容。 因此,正确的思考思路是,包括变量和函数在内的所有声明都会在任何代码被执行前首先被处理。也就是执行上下文中所需要完成的工作。有兴趣童鞋可以看看你不知道的javascript提升。 那么,具体是哪些工作呢? 变量、函数表达式——变量声明,默认赋值为undefined this——赋值; 函数声明——赋值; 这三种数据的准备情况我们 ...
阅读全文 »

重温——this

发表于 2018-03-10 | 分类于 javascript
js中的this都有哪些作用? 当函数作为对象的方法调用时,this 指向该对象 当函数作为单纯函数调用时,this 指向全局对象(严格模式时,为 undefined) 构造函数中的 this 指向新创建的对象 嵌套函数中的 this 不会继承上层函数的this,如果需要,可以用一个变量保存上层函数的 this。 在函数中this到底取何值,是在函数真正被调用执行的时候确定的,函数定义的时候确定不了。因为this的取值是执行上下文环境的一部分,每次调用函数,都会产生一个新的执行上下文环境。 如果在函数中使用了this,只有在该函数直接被某对象调用时,该this才指向该对象。 this的取值,分四种情况: 情况1:构造函数12345678function Foo(){ this.name = "cc ...
阅读全文 »

重温——对象与原型

发表于 2018-03-04 | 分类于 javascript
数据类型 一切引用类型都是对象。我们都知道JS的数据类型有String、Number、Boolean、Undefined,ES6新增Symbol的基本数据类型、Null、对象(Object)。其中,前面5种属于简单的值类型,不是对象。Null和Object(包括函数、数组、对象)等都是对象,它们都是引用类型。判断一个变量是不是对象非常简单。值类型的类型判断用typeof,引用类型的类型判断用instanceof。123console.log(typeof true); // booleanvar fn = function () { };console.log(fn instanceof Object); // true 函数和对象的关系先看一个例子:12345function Fn( ...
阅读全文 »

重温——apply和call方法

发表于 2018-03-03 | 分类于 javascript
以前,自己都是通过把笔记、容易忘和经常需要用的知识都记录在自己本地的文件里面。既然有了博客,这两天刚好整理一下原来的笔记,把现在还认为不错的分享到博客上。来第一篇先分享一下常见的apply和call方法。 在说apply和call之前,首先你必须要知道javascript中的上下文环境:(PS:不懂的童鞋可以自行百度,下回在原型与闭包的分享中也会做比较详细的说明)。这里先说两点: 一、javascript中的this关键字指向的是包含当前方法的那个对象; 二、而在面向对象的javascript编程中,this指向的就是由某个”类”创建的一个对象实例。 apply和call方法的主要两个功能 一、在需要改变调用函数this的时候,或者调用本身对象没有的方法的时候:当调用其他对象而非代表当前上 ...
阅读全文 »

Vuex 简单使用

发表于 2018-03-03 | 分类于 vueJs
Vuex是什么?Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化,适用于大中型单页应用(SPA) 什么时候,我们需要用到 Vuex 呢? 其实上面的概念已经告诉我们了,即集中式的管理所有组件的状态,简单的说,就是当我们的应用遇到多个组件共享状态的时候,导致单向数据流的简洁性很容易被破坏。例如:商城项目的购物车数量状态,你可以在很多地方修改购物车里的商品状态和商品数量。这时候我们的 Vuex 就登场了,可以很轻松的管理购物车的状态。 Vuex思想流程图: 其实可以说,在 vue 中,所有组件 data 里面的变量都可以称为 State,也可以说是 vue 项目的首要核心概念,我们在 vue 里面使用状态去管 ...
阅读全文 »

Array.prototype.slice.call(arguments)

发表于 2018-02-24 | 分类于 javascript
今天在使用 Array.prototype.slice.call(arguments); 的时候,突然有一个疑问?为什么 slice() 方法可以将类数组对象/集合转换成一个新数组? slice()介绍我们知道,slice() 方法返回一个从开始到结束(不包括结束)选择的数组的一部分浅拷贝到一个新数组对象。且原始数组不会被修改。 基本语法为: 12345678arr.slice();// [0, end]arr.slice(begin);// [begin, end]arr.slice(begin, end);// [begin, end) 参数: begin 可选: 从该索引处开始提取原数组中的元素(从0开始)。 如果该参数为负数,则表示从原数组中的倒数第几个元素开始提取,slice(-2)表示提取原数组中 ...
阅读全文 »

ES6 Symbol,Iterator,Generator,Async,Class

发表于 2018-02-19 | 分类于 javascript
ES6 中强大实用的语法有很多,例如:let关键字,const关键字,变量的解构赋值,模板字符串,简化对象,箭头函数,”…”拓展运算符,形参默认值,Promise 对象,Symbol 类型,Iterator 遍历器,Generator 函数,Async 函数,Class 等等。 前面说了 ES6 中的 Promise,今天来看看 Symbol,Iterator,Generator,Async,Class: SymbolES5 中对象的属性名都是字符串,容易造成重名,污染环境,所以有了现在的 symbol~ 概念:ES6 中的添加了一种原始数据类型 symbol (已有的原始数据类型:String, Number, boolean, null, undefined, 对象) 特点: Symbol 属性对应的值是 ...
阅读全文 »

Promise入门

发表于 2018-02-17 | 分类于 javascript
Promise是什么在MDN上是这样解释的: The Promise object is used for asynchronous computations.(Promise 对象用于异步计算) The Promise object represents the eventual completion (or failure) of an asynchronous operation, and its resulting value.(Promise 对象用于表示一个异步操作的最终状态(完成或失败),以及其返回的值。) 看完上面的解释你可能还是不太明白,我个人来理解,按照用途可以这样解释: 主要用于异步计算 可以将异步操作队列化,按照期望的顺序执行,返回符合预期的结果 可以在对象之间传递和操作 Prom ...
阅读全文 »
1…131415…17
cchroot

cchroot

Your bloom is the reason of the breeze

163 日志
16 分类
21 标签
GitHub Juejin LeetCode
© 2023 cchroot
个人专属
|
主题 — NexT.Pisces v5.1.4