一,Rest and Spread操作符: 用来声明任意数量的方法参数也就是"..."操作符 输出结果: 18 jajj 89 function test (a, b, c) { console.log(a); console.log(b); console.log(c); } var agrs = [1, 2]; test(...agrs); 输出结果: 1 2 undefind var agrs = [4,5,6,7,8,9]; test(...agrs); 输出结果: 4 5 6…
一.类(Class) 类是ts的核心,使用ts开发时,大部分代码都是写在类里面. 1.类的声明 多个对象有相同的属性和方法,但是状态不同. 声明类的属性和方法时可以加 访问控制符,作用是:类的属性和方法是否可以在类的外部访问到. 默认public,还可以取值private,protected. 对应prototype 2.类的构造函数 构造函数是类的特殊方法,只有在类被实例化的时候调用,而且只被调用一次. 构造函数名:constructor,不能在外部被访问. 作用:实例化一个人的时候必须指定名…
1.泛型(generic) 参数化的类型,一般用来限制集合的内容 class Person { constructor(private name: string) { } work() { }}var worker: Array<Person> = [];//这里指定数组中只能放Person类创建的对象 worker[0] = new Person("zhang san"); 2.接口interface 用来建立某种代码约定,使得其他开发者在调用某个方法或者创建新的类时必须…
一,TypeScript多行字符串 传统JavaScript字符串换行需要+进行拼接,而TypeScript不需要+拼接.看下面实例: javaScript: var content = "aaa"+ "bbbb"; TypeScript: var content = `aaa bbb`; (注意这里的``不是单引号,是双撇号,键盘左上角的那个按键): 二,TypeScript字符串模板 字符串模板就是在多行字符串里用一个表达式插入变量,标签,方法: var myN…
1.类(class) 类是TypeScript的核心,使用TypeScript开发时,大部分代码都是写在类里面的. 类的定义 ,属性控制符 public(允许外部访问,也是默认的方式),private(私有,只能在类的内部访问),protected(受保护的,可以在类的内部和子类中访问) class Person { public name:string; age:number; eat (){ console.log("输出"): } } 类的实例化,通过new关键字 var p1…
箭头函数(Arrow functions),是ECMAScript2015中新加的特性,它的产生,主要有以下两个原因:一是使得函数表达式(匿名函数)有更简洁的语法,二是它拥有词法作用域的this值,也就是说它跟父作用域共享this,不会新产生自己作用域下的this, arguments, super 和 new.target 等对象. 使用箭头函数特性 在JavaScript代码中,函数无处不在.假设页面上有一个特定的按钮,它的id是‘clickMe’,点击它后,页面弹出“Hello,Arrow…
Spring框架入门之Spring4.0新特性——泛型注入 一.为了更加快捷的开发,为了更少的配置,特别是针对 Web 环境的开发,从 Spring 4.0 之后,Spring 引入了 泛型依赖注入. 二.泛型依赖注入:子类之间的依赖关系由其父类泛型以及父类之间的依赖关系来确定,父类的泛型必须为同一类型. 通俗一点来说:两个子类之间的依赖关系不需要在子类中去声明,而是在父类中进行了声明,而依赖的纽带就是 泛型类型,必须是相同的父类泛型类型才具有依赖关系. 三.代码说明如下: 1.首先建立repo…
声明 本篇内容全部摘自阮一峰的:ECMAScript 6 入门 阮一峰的这本书,我个人觉得写得挺好的,不管是描述方面,还是例子,都讲得挺通俗易懂,每个新特性基本都还会跟 ES5 旧标准做比较,说明为什么会有这个新特性,这更于理解. 所以,后续不会再写个关于 ES6 系列的文章了,就在这篇里大概的列举一下,大体清楚都有哪些新特性就好了,以后需要用时再去翻一翻阮一峰的书. 正文-ES6新特性 ES6 新标准规范相比于 ES5 旧标准规范中,无非就三个方面的改动:新增.更新.废弃. 由于更新和废弃需要…
一:jdk7新特性 可以表示二进制数值,以0b开头,中间可以使用下划线_分隔符.如下: @Test /** * 测试jdk新特性 */ public void testJdk7(){ int a=0b00000000000000000000000000000011; int b=0b0000_0000_0000_0000_0000_0000_0000_0011 System.out.println("a="+a+"\n"+"b="+b); } 二…
一.对象的扩展 1.1对象属性名表达式 ES6可以在JSON中使用[]包裹一个key的名字.此时这个key将用表达式作为属性名(被当做变量求值),这个key值必须是字符串. var a = 'name' var obj = { [a] : "小明", age:12, sex:"男" } console.log(obj.name) 1.2 Object.assign()方法 该方法用于对象的合并,将源对象的所有可枚举的属性,复制到目标对象. Object.assign…
ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了.它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言. 整理下ES6的新特性,具体用法不详细描述,只作为总结归纳 1.let 和 const 命令 使用let声明的变量可以重新赋值,但是不能在同一作用域内重新声明 使用const声明的变量必须赋值初始化,但是不能在同一作用域类重新声明也无法重新赋值 2.变量的解构赋值 数组的…
HTML5 是对 HTML 标准的第五次修订.其主要的目标是将互联网语义化,以便更好地被人类和机器阅读,并同时提供更好地支持各种媒体的嵌入.HTML5 的语法是向后兼容的.现在国内普遍说的 H5 是包括了 CSS3,JavaScript 的说法(严格意义上说,这么叫并不合适,但是已经这么叫开了,就将错就错了). HTML5新特性 语义特性 HTML5赋予网页更好的意义和结构 文件类型声明(<!DOCTYPE>)仅有一型:<!DOCTYPE HTML>. 新的解析顺序:不再基于SGM…
一.TypeScript-Rest and Spread操作符 用来声明任意数量的方法参数  ...args中的...就是Rest and Spread操作符. 例1: 声明一个可以传任意数量的参数进来的方法 function func1(...args) { args.forEach(function (arg){ console.log(arg); } } func1(1, 2, 3); func1(7,8,9,10,11); 例2: 反过来的用法 把任意长度的数组转化成固定数量的参数调用…
一,参数类型 1.在参数的名称后面使用冒号来指定参数的类型,当赋值的不是指定类型数值时会报错. var myname: string = "zhang san"; 2.当你没有指定类型时,会默认你第一次赋值的数据类型为当前变量的数据类型,在TypeScript中称为(类型推断机制) var myname = "zhang san"; myname = 13;//(这时候就会报错) 3.any 类型,当定义为any 类型时,可以赋多种类型的数值. var myname…
ES6 函数 引言: 函数在任何语言中偶读很重要,java里面的函数通常叫做方法,其实是一个东西,使用函数可以简化更多的代码,代码结构看着更加清晰.今天我们来学学ES6语法中,函数有什么变化. 虽然现在的有比ES6更高的版本,但是主流一般都是ES6.es6中的函数相对于之前的版本提升了很多,相对来说在某些特定条件下,用新的函数很方便,也更简洁,功能性更加强大. 1.带参数默认值的函数. 我们都知道js是弱类型语言,不知道你有没有试过,或者学到过,js的函数声明过后,在调用这个函数的时候可以忽略这…
本篇要学习的内容和知识结构概览 函数的参数及其传递方式 1. 函数参数传递方式 传值: 传变量值: 将实参内存中的内容拷贝一份给形参, 两者是不同的两块内存 传地址值: 将实参所对应的内存空间的地址值给形参, 形参是一个指针, 指向实参所对应的内存空间 传引用: 形参是对实参的引用, 形参和实参是同一块内存空间 2. 对象作为函数参数, 也就是传变量值 将实参对象的值传递给形参对象, 形参是实参的备份, 当在函数中改变形参的值时, 改变的是这个备份中的值, 不影响原来的值 像这样: void f…
1.swift中使用关键字func来声明和定义一个函数.调用函数使用它的名字加上小括号中的参数列表. 2.swift使用->方向符号分隔参数的名字和返回值类型 3.swift使用元组(tuple)来返回多个值 4.函数可以接收可变参数个数,手机到一个数组中 5.函数可以嵌套.内嵌函数可以访问其定义的所在函数的变量.使用内嵌函数组织代码,可以避免过长和过于复杂 6.函数是第一类型的,这意味着函数可以作为返回值返回 7.函数还可以作为另一个函数的参数使用 8.闭包,闭包相当于一个匿名函数(匿名函数做…
一,箭头表达式 用来声明匿名函数,消除传统匿名函数的this指针问题 //单行的话可以省略{},多行的不能省. var sum = (arg1,arg2)=> arg1+arg2; //定义一个午餐函数 var doSomething = () =>{ console.log("hahahha"); } //返回偶数 var array = [1,2,3,4] console.log(array.filter(value => value % 2 == 0)); //…
一.函数回顾与后置返回类型 函数定义中,形参如果在函数体内用不到的话,则可以不给形参变量名字,只给其类型. 函数声明时,可以只有形参类型,没有形参名 把函数返回类型放到函数名字之前,这种写法,叫前置返回类型. C++11中,后置返回类型,在函数声明和定义中,把返回值类型放到参数列表之后. 前面放auto,表示函数返回类型放到参数列表之后,而放在参数列表之后的返回类型是通过 -> 开始的. #include <iostream> using namespace std; void func…
  接口我感觉是很常用的一块 定义标准: 接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用.接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部状态数据,也不关心这些类里方法的实现细节,它只规定这批类里必须提供某些方法,提供这些方法的类就可以满足实际需要. typescrip中的接口类似于java,同时还增加了更灵活的接口类型,包括属性.函数.可索引和类等. 1)属性类接口 举个例子分析下 interface Fu…
虽然 JDK 1.7 不像 JDK 5 和 8 一样的大版本,但是,还是有很多新的特性, 如 try-with-resource 语句,这样你在使用流或者资源的时候,就不需要手动关 闭,Java 会自动关闭.Fork-Join 池某种程度上实现 Java 版的 Map-reduce. 允许 Switch 中有 String 变量和文本.菱形操作符(<>)用于类型推断,不再需 要在变量声明的右边申明泛型,因此可以写出可读写更强.更简洁的代码.另一 个值得一提的特性是改善异常处理,如允许在同一个 …
12.函数名的使用 函数是第一类对象 函数名可以当做值被赋值给变量 def func(): print(1) return a = func print(func) print(a) a() 函数名可以当做元素存放在容器中: def func(): print(1) return lst = [func,func,func] for i in lst(): i() 函数名可以当做函数的参数 def func(f): f() return def foo(): print(123) return…
类型别名 下面的代码将string类型赋值给一个别名,以后如果出现别名的地方,就好比出现类型string,同理其他类型也一样 type Name=string let gender:Name='男' 接口 接口定义一些规范,实现该接口必须要实现该接口定义的规范 一个class可以实现多个接口,但是一个class只能继承一个类 interface INamed{ name:string // 注意没有方法体,在具体的对象中实现方法体 print():void } const sayName=(o:…
C# 语言是在2000发布的,至今已正式发布了7个版本,每个版本都包含了许多令人兴奋的新特性和功能更新.同时,C# 每个版本的发布都与同时期的 Visual Studio 以及 .NET 运行时版本高度耦合,这也有助于开发者更好的学习掌握 C#,并将其与 Visual Studio 以及 .NET 的使用结合起来. 加快 C# 版本的发布速度 在被称为“新微软”的推动下,微软创新的步伐也加快了.为了做到加快步伐,微软开发部门将一些过去集成在一起的技术现在都分离了出来. Visual Studio…
本文翻译自:https://dzone.com/articles/3-new-c-8-features-we-are-excited-about 转载请注明出自:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. C# 语言是在2000发布的,至今已正式发布了7个版本,每个版本都包含了许多令人兴奋的新特性和功能更新.同时,C# 每个版本的发布都与同时期的 Visual Studio 以及 .NET 运行时版本高度耦合,这也有助于开发者更好的学习掌握 C#,并将其与 Vis…
1.typescript介绍 微软开发的一门编程语言,javascript的一个超集,遵循最新的ES6脚本语言规范(2015年发布),它扩展了Javascript的语法,任何已经写好的javascript程序都可以不加改动的在typescript环境下运行,它只是想javascript添加了一些新的遵循ES6的语法,以及基于类的面相对象编程的特性.angular2框架2016年9月底发布,是由typescript语言来编写的:typescript是由谷歌和微软在背后支持的,有可能成为前端脚本语言…
SE(J2SE),standard edition,标准版,是我们通常用的一个版本,从JDK 5.0开始,改名为Java SE. EE(J2EE),enterprise edition,企业版,使用这种JDK开发J2EE应用程序,从JDK 5.0开始,改名为Java EE. ME(J2ME),micro edition,主要用于移动设备.嵌入式设备上的java应用程序,从JDK 5.0开始,改名为Java ME. 没有JDK的话,无法编译Java程序,如果想只运行Java程序,要确保已安装相应的…
概述 一jdk15新特性 泛型 foreach 自动拆箱装箱 枚举 静态导入Static import 元数据Metadata 线程池 Java Generics 二jdk16新特性 Desktop类和SystemTray类 使用JAXB2来实现对象与XML之间的映射 StAX 使用Compiler API 轻量级Http Server API 插入式注解处理APIPluggable Annotation Processing API 用Console开发控制台程序 对脚本语言的支持 Commo…
[外链图片转存失败(img-rmJXMGFs-1563388353181)(https://upload-images.jianshu.io/upload_images/11158618-dd813ed6e7f957c9.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)] 字符串新特性 变量和参数新特性 函数新特性 匿名函数 for of循环 TypeScript语言中的面向对象特性 理解ES5,ES6,JAVASCRIPT,TYPESC…
最近几天学习了一下lambda表达式,看了不少博客,感觉有一篇博客总结的一句话总结的很好:lambda表达式是一段可以传递的代码,它的核心思想是将面向对象中的传递数据变成传递行为.其实以前也有传递行为的方式,c++里是函数指针,java中有一种神奇的东西叫做匿名内部类,而现在的lambda表达式,提供了一种取代匿名内部类的途径,并且将其更规范化的变成了一类接口——函数是接口.以下将分为三个大的部分进行介绍,第一部分将对lambda表达式的语法格式进行介绍,第二个部分将继续第一篇对函数式接口的介绍…