Author: admin

打造全屏体验

我们有能力轻松制作身临其境的全屏网站和应用程序,但与网络上的任何内容一样,有几种方法可以做到这一点。现在这一点尤其重要,因为越来越多的浏览器支持启动全屏的“已安装的网络应用程序”体验。

让你的应用程序或网站全屏显示#

用户或开发人员可以通过多种方式获得全屏 Web 应用程序。

  • 请求浏览器进入全屏以响应用户手势。
  • 将应用程序安装到主屏幕。
  • 假装:自动隐藏地址栏。

如何从Angularjs 升级到 Angular

原文: Upgrading from AngularJS to Angular

Author: AngularJS 官方

译者:philoenglish.com 团队

关键字: Angularjs Angular Angular1.x Angular2.x migration 迁移, 升级

这里的Angular是指Angular 2.x, 而AngularJS 是指AngularJS 1.x版本。 Angular (通常是指 "Angular 2+" 或 "Angular v2 及更高版本") 是一个基于 TypeScript 的 开源 Web 应用框架 由 Google

谷歌推出 AngularJS 升级工具,可快速迁移至 Angular

ngMigration Assistant 是一个易于使用的命令行实用程序,可扫描 AngularJS 应用程序并建议如何迁移到 Angular。

安装

globally 模式安装 ngma

运行

ngMigration Assistant 将扫描当前工作目录或输入目录

类: analysisTool

在提供的目录上分析,并返回选择哪个 Angular 迁移路径的建议。它着眼于复杂性、源代码行(sloc)、反模式、AngularJS 版本以及迁移所需的准备工作。它标识需要修改的文件以及准备应用程序进行升级的特定更改。

** 方法**

buildPathIgnoringGlobs() 通过使用 glob 删除与 ignore globs 匹配的文件来构建新的文件系统,并作为新文件系统的数组返回。

getGlobsFromGitignore() 将 .gitignore 文件解析为一组 globs 并将默认 globs 附加到数组中。从数组中过滤以 ! 开头的模式,因为 ! …

【经典面试题】js防止重复点击、防止点击过快的方法

若用户疯狂点击提交按钮,请求很多次,生成好多条数据,为了解决这种问题,通常采用以下两种简单两种方法

1.可以添加一个开关,让这个开关默认为true,第一次点击将其变为false,点击事件的执行需要判断这个开关是否为true(例如有了请求结果然后在设置为true),为true执行,false不执行

    var isclick = true;
    function fn(){
        if(isclick){
            isclick = false;
            //下面添加需要执行的事件
                ...
            console.log('点击事件');
            
        }
    }

2.防止点击过快,还可以设置定时器,让在一定时间后,自动将开关变为true,变多次执行为一段时间内的一次执行

var oldtime = '';
function preventclick(msc){
	if(oldtime==''){
		oldtime = new Date().getTime();
		return true;
	}else{
		var newtime = new Date().getTime();
		if(newtime - oldtime 

为什么程序员如此热爱TypeScript ?

Python 是我的谋生工具,我很喜欢它。尽管我对这门语言有一些 批评的地方,但我还是强烈推荐给任何开始从事数据科学的人。反正在这个领域中,比较有经验的人往往都是 Python 的布道师。

然而,这并不意味着你不能时不时地挑战你所在领域的极限,例如探索 不同的编程范式 或新的编程语言。

Python 的竞争对手名单很长:Rust、Go、Scala、Haskell、Julia、Swift、C++、Java 和 R 都可以在其中找到条目。在如此拥挤的领域里,JavaScriptTypeScript 没有得到那么多的认可,这是可以理解的。

但这并不意味着 TypeScript 不是通用编程领域的主流。然而,在数据科学家群体中,它似乎从来就没有特别受欢迎过。

你可能会得出这样的结论,TypeScript 可能不是数据科学的理想选择。但不要急着下结论。尽管它可能不适合数据科学的每一部分,但在某些领域上,它比 Python 有明显的优势。

如果你碰巧在这些领域之一工作的话,那么值得给 TypeScript 一个机会。如果你不这么做的话,谁知道你的下一步会在哪里呢?这个领域发展得如此之快。如果你能将眼光放远一些,你就有了竞争优势。

TypeScript:是一种 JavaScript,但类型安全

大约十年前,Microsoft 的软件工程师注意到,JavaScript 已经不能满足他们所有的需求了。一方面,该语言发展迅速,并增加了非常有趣的新特性。另一方面,管道中的任何功能都不能解决一个根本性的问题:JavaScript 对于小型程序来说非常棒,但用它来编写整个应用程序却一团糟。

解决这一问题有几种可能性:例如,可以使用不同的编程语言,或者使用更好的语法重新设计 JavaScript。Microsoft

JavaScript Promises:简介

Promise 简化了延迟和异步计算。Promise 代表一个尚未完成的操作。

 

诸位开发同仁,请准备迎接 Web 开发史上的重大时刻。

[鼓声响起来]

Promise 已经来到了 JavaScript

[璀璨的烟花在天上亮起,五彩纸屑纷纷落下,人们为之疯狂]

此时此刻,您会是下列几种人之一:

  • 大家在周围欢呼,但您根本不知道这是为了什么。也许您甚至不知道这个 promise 到底是什么东西。您耸了耸肩,但肩上却感到了五彩纸屑的重量。假如是这样,请别担心,我花了很长时间才弄清楚它的重要性。您可能想从头开始了解。
  • 您兴奋地挥出一拳!可算等到了!您之前已经用过这些 Promise,但让人苦恼的是,所有的实现都采用略有不同的 API。官方 JavaScript 版本的 API 是什么?您可能想从术语开始。
  • 您对它已经有所了解了,对那些上蹿下跳的新人嗤之以鼻。花点时间享受下您的优越感,然后直接前往 API 参考吧。

Kubernetes(K8s)基本概念

Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,简称“K8s”或者“Kube”。Kubernetes 最初由 Google 的工程师开发和设计,Google 是最早研发 Linux 容器技术的企业之一,曾公开分享介绍 Google 云服务背后的技术- 如何将一切都运行于容器之中。Google 每周会启用超过 20 亿个容器全都由内部平台 Borg 支撑。Borg 是 Kubernetes 的前身,多年来开发 Borg 的经验教训成了影响 Kubernetes 中许多技术的主要因素。

 

从CentOS 停服说起,龙蜥操作系统的开源观

“计算机体系结构”术语的确定标志着计算机学科的建立,计算机软硬件也就此有了界限。编译语言的诞生则让 CPU 硬件和操作系统的性能得以同时发挥出来。

经过近七十年的发展,作为基础软件三驾马车之一的操作系统形成如今的生态,和芯片一同被视为云时代重要的底层技术储备。故而,CentOS 停服引发热议。不过,阿里云技术战略总监、龙蜥社区运营委员会主席陈绪告诉 InfoQ,由于龙蜥操作系统及时顶上,CentOS 停服其实没有带来太大影响。

CentOS 是比较流行的 Linux 发行版之一。从技术的角度来看,底层操作系统需要有新的编译器支持相关的应用,新的硬件设备需要使用升级后的操作系统驱动,软件的 bug 需要得到及时的解决,所有的国密算法必须有操作系统支持……这些正是龙蜥操作系统的优势所在。…