javascript

什么是柯里化?官方的说法在计算机科学中,柯里化(英语:Currying),又译为卡瑞化或加里化,是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术。这个技术由克里斯托弗·斯特雷奇以逻辑学家哈...

阅读更多

options 请求当我们的 ajax 的请求为非简单请求时,浏览器会进行预检,即发送 OPTIONS 请求到服务器,询问是否允许跨域。如果响应中允许我们预检请求的跨域行为,则浏览器会进行真正的请求。否则,会报 405 错误。

阅读更多

位运算是直接对二进制位进行计算,它直接处理每一个比特位,是非常底层的运算,好处是速度极快,缺点是很不直观,许多场合不能够使用。位运算只对整数起作用,如果一个运算数不是整数,会自动转为整数后再运行。在JavaScript内部,数值都是以64位浮点数的形式储存,但是做位运算...

阅读更多

这是一道出自 HTTP 203 的 JS 题目。HTTP 203 是 Youtube 上的一个栏目,主要讲一些有趣的知识。 原题目是这样的: 123456789for( let i = (setTimeout(()=>console.log(i), 2333), 0); i < 2; i++) { }// 问 2333 毫秒之后打印出什么 答案是 2333 毫秒后打印出 0。 为什么呢? 在开始分析题目之前,我们先来回顾几个知识点: for 语法123for (语句 1; 语句 2; 语句 3) { 被执行的代码块} 语句 1(&#...

阅读更多

我们在看源代码时,我们经常会发现有的源代码 Javascript 表达式后面加了分号,有的却没有加,难免心中产生疑惑:Javascript 表达式后面到底该不该加分号呢? 其实 Javascript 表达式没有应不应该加分号明确规定,全凭个人习惯,也就是说你加也可以不加也不会出错。Javascript 语法长得有点像 C-like, 但不代表ָ...

阅读更多

背景我们都知道,Javascript 语言的执行环境是“单线程”的。单线程在程序执行时,一次只能完成一个任务。如果有多个任务,就必须排队,前面一个任务完成,在执行后面一个任务,以此类推。 这种模式的好处是实现起来比较简单,执行环境相对单纯;坏处是只要有一个任务耗时很长,...

阅读更多

概述JavaScript 每一个值,都属于某一种数据类型,JavaScript 的数据类型,共有六种。(ES6 又新增了第七种 Symbol 类型的值)。 数值(number):整数和小数(比如1和3.14);字符串(string):文本(比如Hello World);布尔值(boolean):表示真伪的两个特殊值,即true(真)和false(假);undefined:表示“未定义”或不存在,即由...

阅读更多

概述JavaScript中,相等运算符(==)是一个很让人头痛的运算符,它的语法行为多变,不符合直觉。比如下面这个表达式,它的值是什么?想知道答案或语言内部怎么处理,我们可以去查看规格。规格对每一种语法行为的描述,都分成两部分:先是总体的行为描述,然后是实现的算法细节。&...

阅读更多

函数是一段可以反复调用的代码块。函数还能接受输入的参数,不同的参数会返回不同的值。 立即执行函数在 Javascript 中,圆括号()是一种运算符,跟在函数名之后,表示调用该函数。比如,print()就表示调用print函数。 有时,我们需要在定义函数之后,立即调用该函数。这时,我们不能在函数的&...

阅读更多

前言ES6标准发布后,module成为标准,标准的使用是以export指令导出接口,以import引入模块,但是在我们一贯的node模块中,我们采用的是CommonJS规范,使用require引入模块,使用module.exports导出接口,甚至有时候也会常常看到两者互用的场景。只有把这些语法搞清楚才能在未来的标准编程游刃有余。 webpack 模块化webpack ٲ...

阅读更多

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×