随笔分类 - JS
Js函数柯里化
摘要:// 该函数就是接受不了多个参数 // function add(x, y) { // return x + y; // } // console.log(add(1, 2)); // 3 // console.log(add(5, 7)); // 12 // 接下来我们要将其进行柯里化 // fu
带样式的console.log
摘要:* log的二次封装 * 具体代码 ```js function print(info) { const contentArr = info.map(info => info.content); const styleArr = info.map(info => info.style).map(st
函数科里化
摘要:* 在函数式编程中,科里化最重要的是把多参函数变为单参函数 * 举个例子:我们创建一个通用函数来复用 ```js // 实现科里化 Object.prototype.curry = function (func, ...args) { const that = this; // 得到从下标1开始的参
this指向
摘要:* this是动态的,在函数调用前是无法预知的,只有函数被调用后this才被确定。 - 在全局代码中使用this,指代全局对象 > 在真实的开发中,很少在全局代码使用this - **在函数中使用this,它的指向完全取决于函数是如何被调用的** | 调用方式 | 示例 | 函数中的this指向 |
全局对象
摘要:# 全局对象 无论是浏览器环境,还是node环境,都会提供一个全局对象 - 浏览器环境:window - node环境:global 全局对象有下面几个特点: 1. 给未声明的变量赋值,实际就是给全局对象的属性赋值 2. 所有的全局变量、全局函数都会附加到全局对象 > 这称之为全局污染,又称之为全局
数据的作用域
摘要:1. JS有两种作用域:全局作用域和函数作用域 - 内部的作用域能访问外部,反之不行。访问时从内向外依次查找。 - 如果在内部的作用域中访问了外部,则会产生闭包。 - 内部作用域能访问的外部,取决于函数定义的位置,和调用无关 ```js var a = 1; function F1() { a++;
js中的this
摘要:js中的this指向 首先this是动态的,在函数调用前是无法预知的,只有函数被调用后this才被确定。 函数调用的5种情况 通过对象调用函数(除了箭头函数),this指向对象 直接调用函数,this指向全局对象 如果通过new调用函数,this指向新创建的对象 如果通过apply、call、bin
js得到一个字符串的真实长度
摘要:早期,由于存储空间宝贵,Unicode使用16位二进制来存储文字。我们将一个16位的二进制编码叫做一个码元(Code Unit)。 后来,由于技术的发展,Unicode对文字编码进行了扩展,将某些文字扩展到了32位(占用两个码元),并且,将某个文字对应的二进制数字叫做码点(Code Point)。
两个数组的并集、交集、差集
摘要:// 两个数组的并集、交集、差集 // 不能出现重复项,得到的结果是一个新的数组 const arr1 = [33, 22, 55, 33, 11, 33, 5]; const arr2 = [22, 55, 77, 88, 88, 99, 99]; // 并集 const union = [...
js统计字符串每个字符出现的次数
摘要:统计下面字符串中每个字符出现的频率 let str = "fgasdfadfdasd" let result = {} for (let i = 0; i < [...str].length; i++) { if (!result[[...str][i]]) { result[[...str][i]
js 内置函数Date
摘要:从深入潜JavaScript 日期对象 | 方法 | 描述 | | | | | * 空执行 Date() | 返回当日的日期和时间(字符串)。 | | getDate() or setDate() | get返回月中的第几天(1-31),set设置对象当月天。 | | getDay() | 返回一周
类数组
摘要:什么是类数组 它首先是一个对象,其次与数组相似,它拥有 length 属性,但却不能使用数组的方法(Array.prototype)。只要一个对象Object,拥有 length 属性,那它就是一个类数组对象。 类数组的特性 属性要为索引(数字属性),必须有length属性,最好加上push Arr
JavaScript入门笔记
摘要:JavaScript编程语言 介绍个好东西JavaScript--前端的灵魂! JavaScript,就是我们通常所说的JS。这是一种嵌入到HTML页面中的编程语言,由浏览器一边解释一边执行。我们都知道,前端最核心的3个技术是HTML、CSS和JavaScript。其中3者区别如下:HTML用于控制