JavaScript类的写法

我们知道,在js中,是没有类的概念的。类的所有实例对象都从同一个原型对象上继承属性,因此,原型对象是类的核心。类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。———百度百科早期的javascript需求都很简单,基本都是写成函数的,然后是面向过程的写法,后来慢慢的引入面向对象开发思想,再后来就慢慢写成 类。在js中,写成类的本质基本都是 构造函数+原型。下面,就讨论一下js类的几种写法:/***Person类:定义一个人,有name属性和getName方法*/<script>functionPerson(name){this.name=name;this.getName=function(){returnthis.name;}}//我们在这里实例化几个对象varp1=newPerson("trigkit4");varp2=newPerson("mike");console.log(p1instanceofPerson);//trueconsole.log(p2instance...
代码星球 代码星球·2020-04-02

javascript设计模式之观察者模式

观察者模式又叫发布订阅模式(Publish/Subscribe),它定义了一种一对多的关系,让多个观察者对象同时监听某一个主题对象,这个主题对象的状态发生变化时就会通知所有的观察者对象,使得它们能够自动更新自己。使用观察者模式的好处:支持简单的广播通信,自动通知所有已经订阅过的对象。页面载入后目标对象很容易与观察者存在一种动态关联,增加了灵活性。目标对象与观察者之间的抽象耦合关系能够单独扩展以及重用。JS里对观察者模式的实现是通过回调来实现的,我们来先定义一个pubsub对象,其内部包含了3个方法:订阅、退订、发布。varpubsub={};(function(q){vartopics={},//回调函数存放的数组subUid=-1;//发布方法q.publish=function(topic,args){if(!topics[topic]){returnfalse;}setTimeout(function(){varsubscribers=topics[topic],len=subscribers?subscribers.length:0;while(len--){subscribe...

Java语言

Java语言-编程基础1.JAVA的特点:  1、简单易用、完全面向对象;  2、与平台无关性、可扩展性强;  3、可移植性高、支持分布式编程;  4、健壮、安全可靠并性能优异;  5、支持多线程开发技术;  6、支持动态开发。2.JVM:Java虚拟机(JVM是Java实现跨平台的基础)。Java的源程序(*.java)编译(命令:java+文件名.java)   Java字节码(*.class 编译时自动形成,与源程序名一致)            运行(命令:java+源程序的文件名)           JVM(Windows、Linux)         开发工具,Javac及基础核心类  JDK     &nb...
代码星球 代码星球·2020-04-02

Java获取本机ip和服务器ip

一、获取服务器IP 1 Stringaddr=InetAddress.getLocalHost().getHostAddress();//获得本机IP   二、获取客户端本机IP1StringremoteAddr=request.getRemoteAddr();2Stringforwarded=request.getHeader("X-Forwarded-For");3StringrealIp=request.getHeader("X-Real-IP");4Stringip=null;5if(realIp==null){6if(forwarded==null){7ip=remoteAddr;8}else{9ip=remoteAddr+"/"+forwarded.split(",")[0];10}11}else{12if(realIp.equals(forwarded)){13ip=realIp;14}else{15if(forwarded!=null){16forwarded=forwarded.split(",")[0];17}18i...

fastjson反序列化LocalDateTime失败的问题java.time.format.DateTimeParseException: Text '2019-05-24 13:52:11' could not be parsed at index 10

本地java类importorg.springframework.format.annotation.DateTimeFormat;importjava.time.LocalDateTime;/***问题处理记录*/publicclassUserIssueProcessDto{/***处理说明/privateStringf_clsm;/**施工队处理反馈*/privateStringf_fk;/***处理开始时间*/@DateTimeFormat(pattern="yyyy-MM-ddHH:mm:ss")privateLocalDateTimef_clkssj;/***处理结束时间*/@DateTimeFormat(pattern="yyyy-MM-ddHH:mm:ss")privateLocalDateTimef_cljssj;/***处理时长*/privateDoubleduration;privateStringf_clry;privateStringf_clryid;/***填写人ID/privateIntegercreatorId;/*...

Java中集合转数组,数组转集合

List转换为Array:ArrayList<String>list=newArrayList<String>();String[]strings=newString[list.size()];list.toArray(strings);数组转成List怎么办呢?如下:String[]s={"a","b","c"};Listlist=java.util.Arrays.asList(s);...
代码星球 代码星球·2020-04-01

在Dubbo中使用高效的Java序列化(Kryo和FST)

http://dubbo.apache.org/zh-cn/docs/user/demos/serialization.html //RPC框架1.Dubbo序列化,未开发成熟  2.hessian2,Thrift之前使用的,是一种跨语言的高效二进制序列化方式3.json序列化:目前两种,一种是阿里的fastjson库,另一种是采用dubbo中自己实现的简单json库,建议使用jkson4.Java序列化:主要采用JDK自带的Java序列化实现,性能很不理想针对Java语言的:Kryo,FST等等  Kryo是一种非常成熟的序列化实现,已经在TwitterGrouponYahoo以及多个著名开源项目(如HiveStorm)中广泛使用.FST则较新,缺乏足够多的成熟案例跨语言的:Protostuff,ProtoBuf,Thrift,Avro,MsgPack等等这些序列化方式的性能多数都显著优于hessian2(甚至包括尚未成熟的dubbo序列化) 增加Kryo依赖<dependency><groupId>...

高性能 Java RPC 框架 Dubbo

简介:高性能JavaRPC框架 (官网:http://dubbo.apache.org/zh-cn GitHub:https://github.com/apache/dubbo)ApacheDubbo|ˈdʌbəʊ|是一款高性能、轻量级的开源JavaRPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。它最大的特点时按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(这最大限度地松耦合)。从服务模型的角度来看,Dubbo采用的是一种非常简单的模型,要么是提供服务,要么是消费方耗费服务,所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色。 特性:面向接口代理的高性能RPC调用 提供高性能的基于代理的远程调用能力,服务以接口为粒度,为开发者屏蔽远程调用底层细节。 智能负载均衡 内置多种负载均衡策略,智能感知下游节点健康状况,显著减少调用延迟,提高系统吞吐量。  服务自动注册与发现 支持多种注册中心服务,服务实例上下线实时感知。高度可扩展能力 遵...

推荐 33 个 IDEA 最牛配置转(Java技术栈)

1.设置maven1.在File->settings->搜索maven2.Mavan homedirectory--设置maven安装包的bin文件夹所在的位置3.User settingsfile--设置setting文件所在的位置4.Local repository--设置本地仓库 2.IDEA设置代码行宽度1.在File->settings->Editor->CodeStyle2.有人会问,如果输入的代码超出宽度界线时,如何让IDE自动将代码换行?有两种方式!3.第一种,在上述的“Rightmargin(columns)”的下方,有“Wrapwhentypingreachesrightmargin”选项,选中它,是什么效果呢?4.随着输入的字符的增加,当代码宽度到达界线时,IDEA会自动将代码换行。5.第一种方式是在输入代码时触发,还有第二种方式,在File->settings->CodeStyle->Java中,选中“Wrappin...

JavaScript 语言基础知识点总结(思维导图)

  最近逛别人博客的时候发现了这个东西,发现对自己梳理javascript语言的基础知识点很有帮助,平时也可以用来做手册查查,挺赞,挺不错的,所以给大家分享一下了(转载自王子墨、前端攻城师:http://julying.com/blog/the-features-of-javascript-language-summary-maps/) 温故而知新 ————最近温习了一遍Javascript语言,故把一些基础、概念性的东西分享一下。(下面内容大都为条目、索引,是对知识点的概括,帮助梳理知识点,具体内容需要查阅资料)    JavaScript数组JavaScript函数基础Javascript运算符JavaScript流程控制JavaScript正则表达式JavaScript字符串函数JavaScript数据类型JavaScript变量Window对象DOM基本操作 ...

javascript querySelector和getElementById通过id获取元素的区别

querySelector和getElementById通过id获取元素的区别 <!DOCTYPEhtml><html><head><metacharset="utf-8"/></head><body>  <divid="02E503E2A1C011CFC85B7B701A0677EC0900000000000001"></div>  <script>    varstr='02E503E2A1C011CFC85B7B701A0677EC0900000000000001';    functionbySelector(id){      returndocument.querySelector('#'+id);     }    functionbyId(id){       returndocument.getElementById(id);     }    alert(bySelector(str));    alert(byId(str));</scrip...

Javascript函数调用的四种模式

Javascript一共有四种调用模式:方法调用模式、函数调用模式、构造器调用模式以及apply调用模式。调用模式不同,对应的隐藏参数this值也会不同。  函数作为对象的属性时,称为方法。此时函数(即方法)中的this对应是该对象。varmyObject={  value:3,  func:function(){    alert(this.value);  }  };myObject.func();  //3  也可以写成如下格式:varmyObject={value:3};myObject.func=function(){alert(this.value);}myObject.func();  //3  上面,this对应的是myObject对象。   三  函数调用模式  函数调用模式即通常的函数调用,属于全局性调用,此时this对应的是全局对象,即Window对象。varadd=function(a,b){returna+b;}add(3,4);//7  上面也可以写成window.add=function(a,b){returna+b;}add(3,4);//7 ...

JavaScript 跨域总结与解决办法

原文出处:rainman的博客什么是跨域JavaScript出于安全方面的考虑,不允许跨域调用其他页面的对象。但在安全限制的同时也给注入iframe或是ajax应用上带来了不少麻烦。这里把涉及到跨域的一些问题简单地整理一下:首先什么是跨域,简单地理解就是因为JavaScript同源策略的限制,a.com域名下的js无法操作b.com或是c.a.com域名下的对象。更详细的说明可以看下表:URL说明是否允许通信http://www.a.com/a.jshttp://www.a.com/b.js同一域名下允许http://www.a.com/lab/a.jshttp://www.a.com/script/b.js同一域名下不同文件夹允许http://www.a.com:8000/a.jshttp://www.a.com/b.js同一域名,不同端口不允许http://www.a.com/a.jshttps://www.a.com/b.js同一域名,不同协议不允许http://www.a.com/a.jshttp://70.32.92.74/b.js域名和域名对应ip不允许http://www...
首页上一页...550551552553554...下一页尾页