请问JSI是什么东西?一般在什么情况下使用的?
JSI项目分两部分:框架内核、基于这个内核开发的系列功能子项目。
jquery ajax xhr监听上传进度显示不准确,求解?
如果你是用这种方式上传的话,确实没有好方法。
因为 XMLHttpRequest.onProgress 事件能拿到的是网络传输的字节而已;你说的问题里,“上传进度已完成”,实际是指浏览器已经把文件传输给了服务端;“很久才可以”,是你服务端额外处理的时间,这段时间对浏览器来说是不可感知的,它怎么会知道你服务端处理需要多久呢? 一般处理思路有这么几种:1、上传进度设置一个最大值,比如 99%,只有当服务端真正返回结果时才会变到 100%,这种方法最为简单粗暴;
2、尽量减少服务端处理的时间,例如收到文件后交给异步队列去处理,立刻返回给客户端响应,这种方法需要额外做的事件比较多,开发难度更高一些;
3、客户端分片上传,把大文件变成若干段小“文件”,缺点是浏览器只有支持 HTML5 才支持 FormData 分片。
Java到底有多强大,它可以做什么?
Java简介(有多强大)
多年来使用最广泛的编程语言,集成C++等主流编程语言的优点,摒弃多重继承,指针等复杂概念,因为语法简单,容易上手,跨平台等特性,大受欢迎。经过多年的积累和发展,形成了非常完善的Java生态。目前地球最强大(流行)编程语言!
Java能做啥
目前除了驱动,操作系统等少数领域,使用Java不太合适,Java几乎可以做目前IT领域的大部分软件开发。比如:
- 服务器开发
- 分布式,大数据,云
- Android开发
- 嵌入式开发
- 桌面端开发(很少)
- 。。。 。。。
前途
精了,透了,前途无量。
但是谈何容易!没有10年8年的长期积累,很难做到精通,学透。
而且Java的生态非常庞大,永远有学不完的东西。
不要想把所有东西都精通,精通某个领域即可。因为很多东西是类似的,很容易做到触类旁通。需要学习新领域的时候,可以快速掌握新领域的基本开发技能。
为何第一(优势)
- 语法相对简单,入门比较容易。
- 强大的生态,用户量庞大!
- 跨平台,能真正做到一次编译,到处运行。
- 。。。 。。。
Java劣势
解释型语言,需要虚拟机进行翻译执行,没有虚拟机的地方,不能使用,而且执行速度不是最快的。
版本更新比较慢,最新流行的语法或语法糖支持不是很到位。因为用户量庞大,生态复杂,再加上本身已经很完善了,所以语言更新少 新特性少。
相比新生代语言,比如Go,在语言新机制方面跟进不及时。

