随笔分类 -  Javascript系列

js原理相关知识的个人理解记录
摘要:object作为javascript的内置对象、同时也可以作为一个构造函数进行使用; 1.概述 1.1、描述: javascript中的所有对象都来自Object,所有对象从Object.prototype继承方法和属性,尽管他们可能被覆盖。 1.2. 对象的属性 在讨论javascript的对象O 阅读全文
posted @ 2018-12-14 13:17 hbzyin 阅读(1933) 评论(0) 推荐(0)
摘要:良好的代码编程习惯是一个优秀的软件工程师的必备素养,也是一个团队开发易于阅读、高可维护性的大型项目的基础;虽然Javascript弱语言的本质给前端开发者带来了更大的灵活性,但从工程的角度来说这是非常不合理的,也是一个可维护性项目潜在的致命缺陷。为了避免出现‘‘连自己以前写过的代码都不忍睹视’’以及 阅读全文
posted @ 2018-01-27 22:33 hbzyin 阅读(392) 评论(0) 推荐(0)
摘要:前端开发因为网络交互的存在,产生了一种最常见的独特场景——异步,即程序执行的过程并非完全按照代码的书写顺序执行。异步编程的解决方法有①回调函数、②事件、③Promise、④观察者对象; Promise是ES6提供的一种异步编程的一种解决方案。简单来书就是一个容器,里面存放着某个未来才会结束的事件;从 阅读全文
posted @ 2017-12-29 01:38 hbzyin 阅读(316) 评论(0) 推荐(0)
摘要:1 阅读全文
posted @ 2017-12-29 01:37 hbzyin 阅读(199) 评论(0) 推荐(0)
摘要:ES6新增了四类数据结构:分别是 、`WeakSet Map WeakMap`. 1. Set —没有重复成员元素的数组; 本质:Set本身是一个构造函数;接收一个具有iterable接口数据结构的参数,用来生成一个没有重复元素的数组; 2个属性: 两类8个方法:操作方法(4种)+遍历方法(4种) 阅读全文
posted @ 2017-12-26 01:10 hbzyin 阅读(342) 评论(0) 推荐(0)
摘要:ES6 01:对象的扩展 阅读全文
posted @ 2017-12-25 23:39 hbzyin 阅读(126) 评论(0) 推荐(0)
摘要:ES5中规定JavaScript有6种数据类型:Undefined、Null、String、Boolean、Number、Object;ES6新增加一种数据类型Symbol. 1.symbol定义 原始数据类型:不是对象,不能使用new命令创建,不能添加属性; 表示独一无二的值: symbol值作为 阅读全文
posted @ 2017-12-25 23:39 hbzyin 阅读(257) 评论(0) 推荐(0)
摘要:ES6对于JavaScript数组对象的扩展,主要是为了增强数组的创建及元素的操作方法;具体来说即一个运算符、数组创建方法、数组元素操作方法、数组属性操作方法四个方面; 1.增加一个运算符——扩展运算符 扩展运算符(spread):如同rest参数的逆运算,将一个数组转换成用逗号分隔的序列,扩展运算 阅读全文
posted @ 2017-12-24 04:36 hbzyin 阅读(202) 评论(0) 推荐(0)
摘要:ES6 针对新的语法特性(解构、参数默认值、箭头语句、块级作用域let),对于函数的属性、参数、作用域进行了扩展,并对递归调导致内存栈溢出用进行了优化。 同时ES6规定,只要函数参数使用了默认值、解构赋值、扩展运算符,函数内部都不可以使用严格模式(ES5可以),否则会报错; 1. 函数参数默认值 E 阅读全文
posted @ 2017-12-24 03:54 hbzyin 阅读(170) 评论(0) 推荐(0)
摘要:1.二进制、八进制 ES5开始严格模式八进制数据不再允许使用前缀0;ES6提供了二进制和八进制的新写法,分别用前缀0b(或0B)、0o(或0O)表示;如: 2.Number对象扩展 新增3个方法:①检查数值是否有限 ;②检查数值是否为NaN ;③判断是否为整数: ; 新增3个常量:①JavaScri 阅读全文
posted @ 2017-12-21 00:44 hbzyin 阅读(237) 评论(0) 推荐(0)
摘要:ES5中,正则表达式构造函数的参数有两中情况: ①:new RegExp(string,flag);如 ; ②:new RegExp(regexp);如 ; 采用第二种方式创建时,不允许传递第二个参数flag,否则会报错,但ES6允许 1. 字符串的正则方法 字符串对象共有4个方法可以使用正则表达式 阅读全文
posted @ 2017-12-19 01:43 hbzyin 阅读(283) 评论(0) 推荐(0)
摘要:众所周知,JavaScript默认采用 进行编码,允许使用 形式表示一个字符,其中 是字符的Unicode码点。ES6扩展了unicode的表示 1.字符串新增方法 String.codePointAt(index):正确处理4个字节存储的字符,返回一个字符的码点; String.fromCodeP 阅读全文
posted @ 2017-12-14 09:04 hbzyin 阅读(285) 评论(0) 推荐(0)
摘要:原文地址: "http://www.cnblogs.com/hbzyin/p/7349727.html" 相信前端开发人员对DOM、BOM对象都已经十分了解了,这些两个对象不仅是入门概念,也是日常开发中接触最多的概念;同时作为前端开发的必备知识之一的Javascript,由于其具有高度的灵活性,很多 阅读全文
posted @ 2017-08-12 11:49 hbzyin 阅读(389) 评论(0) 推荐(0)
摘要:原文地址: "http://www.cnblogs.com/hbzyin/p/7310716.html " 数组Array 是Javascript语言中非常重要的两种 引用类型 数据之一,另外一种为 对象Object 。Array的数据模型可分为两种进行存储:堆栈结构、队列结构。 昨天,确切说是前天 阅读全文
posted @ 2017-08-09 09:05 hbzyin 阅读(1935) 评论(0) 推荐(0)
摘要:最近一段时间在看朴灵翻译的《深入浅出nodejs》,里面有提到一种脱离浏览器的客户端网络通讯工具,curl命令,自己在电脑上试了一下,感觉非常好用,而且莫名的感觉这是一个非常强大的网络工具,一定会成为web开发者的一把小军刀;因此就上网查了一下相关资料,并整理了一下相关的常用用法: 一、简介 CUR 阅读全文
posted @ 2017-07-23 13:11 hbzyin 阅读(7209) 评论(0) 推荐(0)
摘要:这段时间公司开发项目用到oAuth2协议,现在做一下梳理。 CORS即Cross Origin Resouce Share,跨域资源共享;是W3C为防止脚本攻击,而制定的安全标准之一,它允许浏览器向跨域服务器发送XMLHttpRequest请求; 跨域域问题,伴随而来的就是前端项目中的权限认证问题。 阅读全文
posted @ 2017-07-13 16:24 hbzyin 阅读(517) 评论(0) 推荐(0)
摘要:引入 众所周知Javascript是一个单线程的机制,虽然可以依托多线程的浏览器实现页面如何实现页面复杂的渲染、事件响应,但仍不会改变其单线程的本质;所以对于js的事件循环机制的了解是一个前端人员的必备基础之一。 1 几个相关的简单概念(以下备注均以javascript为前提) _ 执行上下文:ex 阅读全文
posted @ 2017-06-17 11:23 hbzyin 阅读(197) 评论(0) 推荐(0)
摘要:闭包与this的一般用法 关于js函数与闭包的文章想必大家都是在熟悉不过的了,作为js核心亦即最强大的功能之一,每次回过头翻出来看一看,都会有不一样的收获与理解,经典的含义无非如此而已。 1.闭包 1.闭包 1.1 先说说js中闭包存在的意义,闭包(closure)的主要作用其实就三点: a.访问外 阅读全文
posted @ 2017-06-17 10:51 hbzyin 阅读(209) 评论(0) 推荐(0)
摘要:最近工作中经常涉及到数据的处理,数组尤其常见,经常需要对其进行遍历、转换操作,网上的文章零零散散,不得已自己又找出红宝书来翻出来看,顺便记一笔,便于以后查询。 数组常用的方法 数组常用的方法 ECMAScript5为数组定义了8个迭代方法。每个方法都接受两个参数:要在每一项上运行的函数fn和(可选的 阅读全文
posted @ 2017-03-03 01:14 hbzyin 阅读(523) 评论(0) 推荐(1)