随笔分类 -  javascript

摘要:js数据类型属于动态类型(弱类型),不用提前声明变量类型,类型会在运行时自动确认(意味着不同的数据类型可以赋值给同一个变量)。 js数据类型分为以下两大类: 基本类型:Undefined,Null,Boolean,Number,String,Symbol。 引用类型:Object,Array、Fun 阅读全文
posted @ 2020-01-07 17:17 刘倩文 阅读(171) 评论(0) 推荐(0)
摘要:ES5:对象的属性名只能是字符串,当给对象添加新属性时,很容易造成属性名冲突,从而覆盖了原有的属性。 ES6:所以ES6中引入了symbol数据类型,他表示独一无二的值,避免了属性名的冲突,此时对象的属性名可由字符串类型或者symbol类型来定义。 symbol是一种基本数据类型,通过Symbol( 阅读全文
posted @ 2020-01-07 17:14 刘倩文 阅读(582) 评论(0) 推荐(0)
摘要:1)直接使用变量 备注:如需使用字符$或{,请使用`\$`或`\{` 2)多行书写 阅读全文
posted @ 2018-11-20 17:27 刘倩文 阅读(1453) 评论(0) 推荐(0)
摘要:Document hello world 阅读全文
posted @ 2018-10-10 16:24 刘倩文 阅读(292) 评论(0) 推荐(0)
摘要:1. str.charAt(index); 返回指定位置的字符 字符串中第一个字符的下标是 0。如果参数 index 不在 0 与 string.length 之间,该方法将返回一个空字符串。 index 必需 需要返回的字符串的索引 举个栗子: 2. str.charCodeAt(index); 阅读全文
posted @ 2018-09-12 16:00 刘倩文 阅读(720) 评论(0) 推荐(0)
摘要:1. JSON.parse(text[, reviver])text 必需 有效的json字符串reviver 可选 函数2. 举栗子1) 只有第一个参数 let objStr = '{"name": "lqw","age": 23,"sex": "female"}'; console.log(JSON.parse(objStr)); 结果: {name: "lqw", age: 23, sex... 阅读全文
posted @ 2018-09-10 12:08 刘倩文 阅读(317) 评论(0) 推荐(0)
摘要:1. JSON.stringify(value[, replacer[, space]]);value 必需 对象或数组,需要转换成json字符串的数据replacer 可选 函数或数组space 可选 文本添加缩进、空格和换行符,小于等于10的数字(如大于10按10展示)或者是代表缩进、空格和换行符的转义字符,例如'\t'2.举栗子1)仅有第一个参数 let obj = { name:... 阅读全文
posted @ 2018-09-10 11:43 刘倩文 阅读(887) 评论(0) 推荐(1)
摘要:function fib(max) { let t, a = 0, b = 1, arr = [a, b]; while (arr.length < max) { [a, b] = [b, a + b]; arr.push(b); } return arr; } fib(5); 结果: [0, 1, 阅读全文
posted @ 2018-09-07 10:42 刘倩文 阅读(89) 评论(0) 推荐(0)
摘要:function getPrimeNumber(arr) { return arr.filter(function (number) { if (typeof number !== 'number' || number<2) { // 不是数字或者数字小于2 return false; } if (number === 2) { ... 阅读全文
posted @ 2018-09-06 17:45 刘倩文 阅读(1206) 评论(0) 推荐(0)
摘要:看this指向谁,要看执行时而非定义时(箭头函数除外)。函数没有绑定在对象上调用,非'strict'模式下,this指向window,否则为undefined 改变this指向的方法 1. apply,立即执行 调用方法 fun.apply('想让this指向谁'[,arr]); 参数以数组形式传入 阅读全文
posted @ 2018-09-06 16:04 刘倩文 阅读(148) 评论(0) 推荐(0)
摘要:for ... of 的出现是因为ES6的Map,Set类型无法使用下标进行遍历,为了统一集合类型,ES6标准引入了新的iterable类型,Array、Map和Set都属于iterable类型,具有iterable类型的集合可以通过新的for ... of循环来遍历。 举个栗子: 那么,for . 阅读全文
posted @ 2018-09-06 10:57 刘倩文 阅读(249) 评论(0) 推荐(0)
摘要:1.Array 2. Map 3. set 阅读全文
posted @ 2018-09-06 10:40 刘倩文 阅读(141) 评论(0) 推荐(0)
摘要:一、map,简单的键值对映射,具有很快的查找速度 1. 初始化map,map的键名可以使用其他数据类型,对象的属性名只能使用字符串或symbol 使用二维数组 初始化一个空Map var m = new Map();m.set('name', 'LQW');m.set('age', 23);m.se 阅读全文
posted @ 2018-09-05 19:19 刘倩文 阅读(617) 评论(0) 推荐(0)
摘要:1. substring(start,end) 返回指定索引区间的字串,不改变原字符串 start 必需,开始位置的索引,一个非负的整数 end 可选,结束位置的索引(不包括其本身),如果未设置,则直接取到字符串的结尾 举个栗子: 2. substr(start,length)方法可在字符串中抽取从 阅读全文
posted @ 2018-09-05 17:21 刘倩文 阅读(199) 评论(0) 推荐(0)
摘要:1. js变量名可以包含数字,字母,$及_,不能以数字开头。 2. js变量可以使用中文,但是最好不要这么命名,以避免不必要的麻烦。 阅读全文
posted @ 2018-09-05 16:38 刘倩文 阅读(715) 评论(0) 推荐(0)
摘要:1.path.resolve([...paths]) path.resolve() 方法会把一个路径或路径片段的序列解析为一个绝对路径。 给定的路径的序列是从右往左被处理的,后面每个 path 被依次解析,直到构造完成一个绝对路径。 例如,给定的路径片段的序列为:/foo、/bar、baz,则调用  阅读全文
posted @ 2018-09-05 11:56 刘倩文 阅读(221) 评论(0) 推荐(0)
摘要:一、数组赋值(从数组中提取值,按照对应位置,对变量赋值) 1. 完全解构(变量与值数目相等) 2. 不完全解构(变量的数目小于值的数目) 3. 解构不成功(变量的数目大于值的数目) 备注:以上三种情况都可以给变量赋上值。 4. 默认值 默认值生效的条件是,变量严格等于undefined。 如果默认值 阅读全文
posted @ 2018-09-03 15:42 刘倩文 阅读(353) 评论(0) 推荐(0)
摘要:浅克隆 1.对象克隆:Object.assign(目标对象, ...源对象) && $.extend(目标对象, ...源对象) 备注: 如果目标对象中的属性具有相同的键,则属性将被源中的属性覆盖。后来的源的属性将类似地覆盖早先的属性。Object.assign 方法只会拷贝源对象自身的并且可枚举的 阅读全文
posted @ 2018-08-24 14:50 刘倩文 阅读(274) 评论(0) 推荐(0)
摘要:今天看vue的响应原理,突然被提到shim这个词,翻阅些许资料然后整理出以下这些内容。 在JavaScript的世界里,有两个词经常被提到,shim和polyfill。 首先理解这两个词之前我们先来了解一下JavaScript 的兼容性问题。 举个例子,旧版本的 IE 不支持标准的 XMLHttpR 阅读全文
posted @ 2018-08-24 11:01 刘倩文 阅读(471) 评论(0) 推荐(1)
摘要:正则表达式 ^ 匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配 ^ 字符本身,请使用 \^。 例: /^[^0]*$/表示不可输入0 $ 匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 '\n' 或 '\r 阅读全文
posted @ 2017-11-09 15:01 刘倩文 阅读(105) 评论(0) 推荐(0)