Javascript

原生JS的兼容性问题

1.关于获取行外样式currentStyle和getComputedStyle出现的兼容性问题 封装一个获取行外样式的函数:(兼容所有浏览器,包括低版本IE6,7)      funtiongetStyle(obj,name){  &nbs...
代码星球·2020-11-21

URL组成 http端口号 nodeJS中接收数据

URL由三部分组成:协议名、域名、端口号HTTP默认端口80,HTTPS默认端口443HTTP协议是HyperTextTransferProtocol(超文本传输协议)的缩写,是用于从万维网(WWW:WorldWideWeb)服务器传输超文本到本地浏览器的传送协议。    &nb...

前端模块化CommonJS&ES6

模块化的开发方式可以提高代码复用性,方便进行代码管理。通常一个文件就是一个模块,有自己的作用域,只对外暴露特定的变量和函数。目前比较流行的js模块化规范有commonJS、AMD、CMD以及ES6的模块系统。一、CommonJS(同步加载模块)允许模块通过require方法来同步加载所要依赖的其他模块,然后通过expo...

RxJS与观察者模式

观察者模式又叫发布订阅模式,它定义了一种一对多的关系,让多个观察者同时监听某一个主体对象,这个主体对象的状态发生变化时就会通知所有的观察者对象,使得他们能够更新自己。  可观察对象Observable与Promise的区别:Promise本质上也是一个Observable,能使用formPromis...
代码星球·2020-11-21

JS设计模式

工厂模式类似于现实生活中的工厂可以生产大量相似的商品,去做同样的事情,实现同样的效果。用函数来封装以特定接口创建对象的细节functionPerson(name,age){varobj=newObject();obj.name=name;obj.age=age;obj.sayName=function(){return...
代码星球·2020-11-21

原生js实现拖拽功能

如果要设置物体拖拽,必须使用三个事件,分别是:1、onmousedown:鼠标按下事件2、onmousemove:鼠标移动事件3、onmouseup:鼠标抬开事件拖拽的原理:根据鼠标的移动来移动被拖拽的元素。鼠标的移动就是鼠标x、y坐标的变化,元素的移动就是position的top和left的变化。当然并不是任何时候移...

手写jQuery插件

插件原理:jQuery插件就是用来扩展jQuery原型对象的一个方法,jQuery插件的使用方式就是jQuery对象方法的调用。 $.fn=jQuery.fn=jQuery.prototype,也就是说jQuery.fn对象是jQuery的原型对象,jQuery的DOM操作方法都在jQuery.fn对象上定义...
代码星球·2020-11-21

js实现继承的方式

 实现继承的方式有:原型链、构造器、组合继承、原型式继承、寄生继承、寄生组合继承以及ES6中的class   原型链的构建是通过将一个类型的实例赋值给另一个类型的原型实现的,如subObj.prototype=newsuperObj();子类的prototype为父类对象的一个实例,因此subObj...
代码星球·2020-11-21

JS框架Vue和React

React和Vue有许多相似之处,它们都有:使用VirtualDOM提供了响应式(Reactive)和组件化(Composable)的视图组件。将注意力集中保持在核心库,而将其他功能如路由和全局状态管理交给相关的库。区别:1、渲染过程Vue在渲染过程中,会跟踪每一个组件的依赖关系,不需要重新渲染整个组件树。 ...
代码星球·2020-11-21

JS框架-Vue.js

Vue(读音/vjuː/,类似于 view)是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。 绑定元素特性:v-bind 特性被称为指令。指令带有前缀 v-,...
代码星球·2020-11-21

JS框架-React.js

JavaScript表达式我们可以在JSX中使用JavaScript表达式。表达式写在花括号{}中。实例如下:<divid="example"></div>   <scripttype="text/babel">   &nb...
代码星球·2020-11-21

压缩js和css文件的原理

压缩:删除Javascript代码中所有注释、跳格符号、换行符号及无用的空格,从而压缩JS文件大小。第一个当然就是去掉注释了。另外就是跟CSS压缩相同的去掉换行符,空格什么的。JAVASCRIPT中有几种变量形式,如变量,函数名,函数的参数等,通常我们在手写JS代码的时候,为了便于理解,我们都会给这些变量名以直观易懂的...

JS判断数据类型的方式

 vara="iamstring.";varb=222;varc=[1,2,3];vard=newDate();vare=function(){alert(111);};varf=function(){this.name="22";};判断数据类型的方式:1、typeofalert(typeofa)-----...

JS数据类型

六种基本数据类型(原始类型):null、undefined、Number、Boolean、String、Symbol一种引用类型:Object (1)存储方式:  基本数据类型以键值对的方式存储在栈中;复杂数据类型)----名存储在栈内存中,值存储在堆内存中,但栈内存会提供一个引用的地址指向堆内存的值。(2)...
代码星球·2020-11-21

JS不同类型之间运算与转换

基本数据类型隐式转换:隐式转换逻辑如:“32”+32=“3232”  "+"可以把数字转换为字符串  “+”可以理解为字符串拼接  “32”-32=0      “-*/”可以把操作数转换为数字  “...