自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 deep copy & shadow copy

1.实现浅拷贝// 1. …实现let copy1 = {…{x:1}}// 2. Object.assign实现let copy2 = Object.assign({}, {x:1})2. 实现深拷贝// 1. JOSN.stringify()/JSON.parse()let obj = {a: 1, b: {x: 3}}JSON.parse(JSON.stringify(obj...

2020-02-29 21:25:15 119

原创 Javascript 正则表达式

什么是正则表达式?正则表达式是由一个字符序列形成的搜索模式。当在文本中搜索数据时,可以用搜索模式来描述要查询的内容。正则表达式可以是一个简单的字符,或一个更复杂的模式。正则表达式可用于所有文本搜索和文本替换的操作。语法/正则表达式主体/修饰符(可选)其中修饰符是可选的。使用字符串的方法正则表达式通常用于两个字符串方法 : search() 和 replace()。...

2020-02-27 22:26:24 75

原创 JavaScript 数据类型和类型转换

JavaScript 中有 6 种不同的数据类型:string(字符串)number(数字)boolean(布尔)object(对象)function(函数)symbol(ES6的数据类型之一)有 3 种对象类型:Object(对象)Date(日期)Array(数组)有 2 个不包含任何值的数据类型:nullundefined需要注意几个:NaN 的数据类...

2020-02-27 20:29:49 141

原创 2.26笔记

JavaScript switch 语句语法:switch(n){ case 1: 执行代码块 1 break; case 2: 执行代码块 2 break; default: 与 case 1 和 case 2 不同时执行的代码}不同类型的循环JavaScript 支持不...

2020-02-26 21:06:53 93

原创 2.25笔记

JavaScript 字符串字符串可以是插入到引号中的任何字符。可以使用单引号或双引号:var carname = "Volvo XC60";var carname = 'Volvo XC60';可以使用索引位置来访问字符串中的每个字符,字符串的索引从 0 开始,这意味着第一个字符索引值为 [0],第二个为 [1], 以此类推:var character = carname...

2020-02-25 16:18:29 68

原创 通过JS实现快速排序

快速排序基本思路:确立一个基准两个哨兵,两个哨兵分别从前后往中间寻找。通过和基准比较找到需要改变位置的数,使基准数左侧的子数组都比基准数小,右侧的子数组都比基准数大。然后两侧部分子数组分别按此方法进行排序。以此类推,最后直到每个子数组的长度为1,排序结束。以下是快速排序的两种方式:第一种常规的快速排序(效率更高)步骤如下:取第一个数 15 为基准,再分别以数组第一位和最后...

2020-02-21 22:27:27 277

原创 算法复杂度

算法复杂度是我们来衡量一个算法效率的标准,主要分为时间复杂度和空间复杂度。时间复杂度就是指算法代码在运行最终得到我们想要的结果时所消耗的时间,而空间复杂度则是指算法中用来存储的数据结构所占用的空间。大O复杂度表示法:大O表示法用于描述算法的性能和复杂程度...

2020-02-20 16:35:38 104

原创 通过JS实现冒泡排序

冒泡排序的三个版本:先说最简单的排序,严格说不属于冒泡排序。原理:当i=0时,让arr[0]也就是在第一位的数字和后面每一位的数字比较。若出现第一位的数字比其中一位大的时候,则和那一位数字交换位置。当第一位数字和其他数字全部比较完之后,在第一位的数字就是数组中最小的。然后当i=1时,让arr[1]和后几位再这样比较和互换,这样下来第二位就是除了第一位最小的了。以此类推,就可以得到...

2020-02-19 20:43:07 125

原创 2.17笔记(AJAX)

创建 XMLHttpRequest 对象:所有现代浏览器(IE7+、Firefox、Chrome、Safari 以及 Opera)均内建 XMLHttpRequest 对象。老版本的 Internet Explorer (IE5 和 IE6)使用 ActiveX 对象。为了应对所有的现代浏览器,包括 IE5 和 IE6,请检查浏览器是否支持 XMLHttpRequest 对象。如果支...

2020-02-17 21:49:04 78

原创 2.16笔记(JSON)

JSON 语法规则JSON 语法是 JavaScript 对象表示语法的子集。数据在名称/值对中数据由逗号分隔大括号保存对象中括号保存数组JSON 名称/值对JSON 数据的书写格式是:名称/值对。名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值.如:"name" : "Liu"JSON 值可以是:数字(整数或浮点数)字符串(在双引号中)...

2020-02-16 17:08:42 120

原创 JS通过递归实现斐波那契数列和二分查找

JavaScript中的递归就是指函数反复调用自己的过程,通过递归来实现斐波那契数列也是一样的逻辑。斐波那契数列指的是这样一个数列:1,1,2,3,5,8,13function fb1(n){ if(n == 0){ return 0; }else if(n == 1){ return 1; }else{ retu...

2020-02-15 19:04:21 285

原创 JavaScript 作用域

作用域可以理解为可访问变量的集合,分为两种:全局变量变量在函数外定义,或者在函数内没有被声明,则为全局变量,有全局作用域,网页中所有脚本和函数均可使用。局部变量变量在函数内被声明,为局部变量,只能在函数的内部访问。函数作用域:在一个声明变量的函数内,无论被声明的变量在函数的任何位置,此变量都会被访问。在函数中的变量被访问时,变量会实现函数提升,举例如下:例1:var ...

2020-02-14 21:48:49 57

原创 2.13笔记

JavaScript 数据类型:值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol。引用数据类型:对象(Object)、数组(Array)、函数(Function)。字符串中也可以使用引号,可以用\'或\"使其不匹配包围字符串的引号,如下:布尔只能有两个值:true...

2020-02-13 22:07:10 96

原创 通过JS实现二分查找(非递归)的方法

二分查找又称折半查找,通俗讲就是通过折半、对比再折半的方式找到最终元素,前提是需要在有序数组中实现,步骤如下:在有序数组中找到中间元素若此中间元素为所要找的目标元素,则结束查找过程,结果为此元素若目标元素大于此中间元素,则从比中间元素大的那一半重新折半查找若目标元素小于此中间元素,则从比中间元素小的那一半重新折半查找重复步骤3或4,直到完成步骤2若持续重复步骤3或4直到条件(low&...

2020-02-13 19:08:14 596

原创 2.12笔记

HTML 定义了网页的内容CSS 描述了网页的布局JavaScript 网页的行为JS脚本可位于 HTML 的<body>或<head>部分中,或者同时存在于两个部分中。通常把JS函数放入<head>部分中,或者放在页面底部。这样就可以把它们安置到同一处位置,不会干扰页面的内容。JS脚本也可以保存在外部文件中。外部JS文件扩展名是.js,...

2020-02-12 21:27:14 111

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除