自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (1)
  • 收藏
  • 关注

原创 6-JS-数据类型-Map 和 Set (映射和集合)

Map 和 Set (映射和集合)Map是一个带键的数据项的集合,就像一个对象一样。但是它们直接最大的差别是 Map 允许任何类型的键。方法和属性如下:new Map() —— 创建 map。map.set(key, value) —— 根据键存储值。map.get(key) —— 根据键来返回值,如果 map 中不存在对应的 key,则返回 undefined。map.has(key) —— 如果 key 存在则返回 true,否则返回 false。map.delete(key) ——

2021-02-24 10:51:29 568

原创 5-JS-数据类型-Iterable object (可迭代对象)

Iterable object (可迭代对象)可迭代(Iterable) 对象是数组的泛化。这个概念是说任何对象都可以被定制为可在 for..of 循环中使用的对象。数组是可迭代的。但不仅仅是数组。很多其他内建对象也都是可迭代的。例如字符串也是可迭代的。Symbol.itetator我们有一个对象,并不是数组,但是看上去很适合使用 for…in 循环。比如一个 range 对象,代表一个数字区别。let range = { from: 1, to: 5};// 我们希望 for..

2021-02-24 10:51:15 1216

原创 4-JS-数据类型-数组方法

数组方法添加/移除数组元素的方法之外splice如何删除元素,可以尝试 deletelet arr = ["I", "go", "home"];delete arr[1]; // remove "go"alert( arr[1] ); // undefined// now arr = ["I", , "home"];alert( arr.length ); // 3用 splice 删除let arr = ["I", "study", "JavaScript"];arr.s

2021-02-24 10:50:55 151

原创 3-JS-数据类型-数组

数组对象允许存储键值集合。但很多时候我们发现还需要 有序集合,里面的元素都是按顺序排列的。例如,我们可能需要存储一些列表,比如用户、商品以及 HTML 元素等。这里使用对象就不是很方便了,因为对象不能提供能够管理元素顺序的方法。我们不能在已有的元素“之间”插入一个新的属性。这种场景下对象就不太适用了。这时一个特殊的数据结构数组(Array)就派上用场了,它能存储有序的集合。声明创建一个空数组let arr = new Array();let arr = [];// 大多数情况下使用第二种

2021-02-24 10:50:38 143

原创 2-JS-数据类型-字符串

字符串引号字符串可以包含在单引号、双引号或反引号中:let single = 'single-quoted';let double = "double-quoted";let backticks = `backticks`;单引号和双引号基本相同,但是,反引号允许我们通过${…}将任何表达式嵌入到字符串中:function sum(a, b) { return a + b;}alert(`1 + 2 = ${sum(1, 2)}.`); // 1 + 2 = 3.而且反引号可

2021-02-24 10:50:20 331

原创 1-JS-数据类型-原始类型方法、数字类型

原始类型的方法我们来看看原始类型和对象之间的关键区别。一个原始值:是原始类型中的一种值。在 JavaScript 中有 7 种原始类型:string,number,bigint,boolean,symbol,null 和 undefined。一个对象:能够存储多个值作为属性。可以使用大括号 {} 创建对象,例如:{name: "John", age: 30}。JavaScript 中还有其他种类的对象,例如函数就是对象。关于对象的最好的事儿之一是,我们可以把一个函数作为对象的

2021-02-24 10:49:58 298

转载 6-2 Java 重写 和 重载

Java 重写 和 重载重写(Override)重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写!重写的好处在于子类可以根据需要,定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。重写方法不能抛出新的检查异常或者比被重写方法申明更加宽泛的异常。例如: 父类的一个方法申明了一个检查异常 IOException,但是在重写这个方法的时候不能抛出 Exception 异常,因为 Exception 是 IOException 的父类,只能

2021-02-23 10:22:49 62

原创 6-JS-对象-原始值转换

对象——原始值转换ToPrimitive我们可以使用特殊的对象方法,对字符串和数值转换进行微调。下面是三个类型转换的变体,被称为 “hint”,在 规范 中有详细介绍(译注:当一个对象被用在需要原始值的上下文中时,例如,在 alert 或数学运算中,对象会被转换为原始值):“string”对象到字符串的转换,当我们对期望一个字符串的对象执行操作时,如 “alert”:// 输出alert(obj);// 将对象作为属性键anotherObj[obj] = 123;“number”对

2021-02-23 10:16:38 206

原创 5-JS-对象-Symbol类型

Symbol 类型根据规范,对象的属性键只能是字符串类型或者 Symbol 类型。不是 Number,也不是 Boolean,只有字符串或 Symbol 这两种类型。到目前为止,我们只见过字符串。Symbol 表示唯一的标识符。可以用 Symbol() 来创建这种类型的值:// id 是 symbol 的一个实例化对象let id = Symbol();创建时,我们可以给 Symbol 一个描述(也称为 Symbol 名),这在代码调试时非常有用:// id 是描述为 "id" 的 Sym

2021-02-23 10:15:52 399

原创 4-JS-对象-构造器和操作符 new

构造器和操作符 new构造函数命名以大写字母开头。只能由 new 操作符来执行。举例:function User(name) { this.name = name; this.isAdmin = false;}let user = new User("Jack");alert(user.name); // Jackalert(user.isAdmin); // false当一个函数被 new 操作符执行时,按照下面步骤:一个新的空对象被创建并分配给 this函数体

2021-02-23 10:14:50 81

原创 3-JS-对象-对象方法,this

对象方法,“this”let user = { name: "John", age: 30};方法示例:let user = { name: "John", age: 30};user.sayHi = function() { alert("Hello!");};user.sayHi(); // Hello!使用预先声明的函数作为方法let user = { // ...};// 首先,声明函数function sayHi() { alert(

2021-02-23 10:13:45 162

原创 2-JS-对象-引用、复制、深层克隆

对象引用和复制let message = "Hello!";let phrase = message;我们可以通过其中任意一个变量来访问该对象并修改它的内容let user = { name: 'John' };let admin = user;admin.name = 'Pete'; // 通过 "admin" 引用来修改alert(user.name); // 'Pete',修改能通过 "user" 引用看到通过引用来比较仅当两个对象为同一对象时,两者才相等。例如:a 和

2021-02-23 10:12:46 133

原创 1-JS-对象-文本属性、属性存在性测试,in

文本和属性let user = { // 一个对象 name: "John", // 键 "name",值 "John" age: 30 // 键 "age",值 30};//读取文件的属性alert( user.name ); // Johnalert( user.age ); // 30//增加一个布尔类型user.isAdmin = true;// delete 操作符移除属性delete user.age;用多字词语来作为属性名,必须加上引

2021-02-23 10:11:45 166

原创 13-JS-函数及箭头函数

函数函数声明function showMessage() { alert( 'Hello everyone!' );}//调用函数showMessage();showMessage();局部变量function showMessage() { let message = "Hello, I'm JavaScript!"; // 局部变量 alert( message );}showMessage(); // Hello, I'm JavaScript!alert(

2021-02-23 10:10:00 277

原创 12-JS-switch语句

switch 语句switch 语句可以替代多个 if 判断。语法:switch(x) { case 'value1': // if (x === 'value1') ... [break] case 'value2': // if (x === 'value2') ... [break] default: ... [break]}比较 x 值与第一个 case(也就是 value1)是否严格相等,然后比较第二个 case(v

2021-02-23 10:09:37 118

原创 11-JS-循环

循环:while 和 forwhile 循环let i = 0;while (i < 3) { // 依次显示 0、1 和 2 alert( i ); i++;}//--------------------或者:let i = 3;while (i) { // 当 i 变成 0 时,条件为假,循环终止 alert( i ); i--;}//-------------------或者://循环体至少执行一次let i = 0;do { alert( i

2021-02-23 10:09:14 113

原创 10-JS-逻辑运算符

逻辑运算符JS 中有三个逻辑运算符:||(或),&&(与),!(非)。|| 或alert( true || true ); // truealert( false || true ); // truealert( true || false ); // truealert( false || false ); // false举例:if (1 || 0) { // 工作原理相当于 if( true || false ) alert( 'truthy!' );}

2021-02-22 15:42:20 147 2

原创 9-JS-条件分支

条件分支if 语句举例:let year = prompt('In which year was ECMAScript-2015 specification published?', '');if (year == 2015) alert( 'You are right!' );也可以执行多个语句if (year == 2015) { alert( "That's correct!" ); alert( "You're so smart!" );}布尔转换if (0) { /

2021-02-22 15:41:21 133

转载 8-JS-值的比较

值的比较在 JavaScript 中,它们的编写方式如下:大于 / 小于:a > b,a < b。大于等于 / 小于等于:a >= b,a <= b。检查两个值的相等:a == b,请注意双等号 == 表示相等性检查,而单等号 a = b 表示赋值。检查两个值不相等。不相等在数学中的符号是 ≠,但在 JavaScript 中写成 a != b。比较结果为 Boolean 类型alert( 2 > 1 ); // true(正确)alert( 2 == 1

2021-02-22 15:40:25 469

原创 7-JS-运算符

术语:“一元运算符”,“二元运算符”,“运算元”运算元 —— 运算符应用的对象。比如说乘法运算 5 * 2,有两个运算元:左运算元 5 和右运算元 2。有时候人们也称其为“参数”而不是“运算元”。如果一个运算符对应的只有一个运算元,那么它是 一元运算符。比如说一元负号运算符(unary negation)-,它的作用是对数字进行正负转换:let x = 1;x = -x;alert( x ); // -1,一元负号运算符生效如果一个运算符拥有两个运算元,那么它是 二元运算符。减号还存在二

2021-02-22 15:39:30 180

原创 6-JS-类型转换

类型转换大多数情况下,运算符和函数会自动将赋予它们的值转换为正确的类型。比如,alert 会自动将任何值都转换为字符串以进行显示。算术运算符会将值转换为数字。在某些情况下,我们需要将值显式地转换为我们期望的类型。字符串转换当我们需要一个字符串形式的值时,就会进行字符串转换。比如,alert(value) 将 value 转换为字符串类型,然后显示这个值。我们也可以显式地调用 String(value) 来将 value 转换为字符串类型:let value = true;alert(typ

2021-02-22 15:38:26 92

原创 5-JS-交互:alert、prompt 和 confirm

交互:alert、prompt 和 confirmalert显示一条信息,并等待用户按下OK。alert("Hello");弹出的这个带有信息的小窗口被称为 模态窗。“modal” 意味着用户不能与页面的其他部分(例如点击其他按钮等)进行交互,直到他们处理完窗口。在上面示例这种情况下 —— 直到用户点击“确定”按钮。prompt接收两个参数:result = prompt(title, [default]);//显示一个带有文本消息的模态窗口,还有 input 框和确定、取消按钮// t

2021-02-22 15:37:51 262 1

转载 4-JS-Object 类型和 symbol 类型

Object 类型和 symbol 类型object 类型是一个特殊的类型。其他所有的数据类型都被称为“原始类型”,因为它们的值只包含一个单独的内容(字符串、数字或者其他)。相反,object 则用于储存数据集合和更复杂的实体。symbol 类型用于创建对象的唯一标识符。typeof 运算符typeof 运算符返回参数的类型。当我们想要分别处理不同类型值的时候,或者想快速进行数据类型检验时,非常有用。它支持两种语法形式:作为运算符:typeof x。函数形式:typeof(x)。换言之

2021-02-22 15:37:05 226

原创 3-JS-数据类型

数据类型// 没有错误let message = "hello";message = 123456;JS 中的值都具有特定的类型。例如,字符串或数字。有8种基本的数据类型(7种原始类型和1种引用类型)Number 类型let n = 123;n = 12.345;number 类型代表整数和浮点数。除了常规的数字,还包括了特殊数值, Infinity, -Infinity, NaN。Infinity 代表无穷大,可以通过除以0来得到它:alert(1/0); //Infini

2021-02-22 15:35:23 65

原创 2-JS-现代模式、变量、常量

现代模式 use strict长久以来,JavaScript 不断向前发展且并未带来任何兼容性问题。新的特性被加入,旧的功能也没有改变。这么做有利于兼容旧代码,但缺点是 JavaScript 创造者的任何错误或不完善的决定也将永远被保留在 JavaScript 语言中。这种情况一直持续到 2009 年 ECMAScript 5 (ES5) 的出现。ES5 规范增加了新的语言特性并且修改了一些已经存在的特性。为了保证旧的功能能够使用,大部分的修改是默认不生效的。你需要一个特殊的指令 —— "use st

2021-02-22 15:34:43 119

原创 1-JS-Helloworld

这里我用VScode编辑器进行代码的编写Hello world!JS 程序可以在 <!DOCTYPE HTML><html><body> <p> script 标签之前...</p> <script> alert('Hello,world!'); </script> <p> ...script 标签之后 </p></body>

2021-02-22 15:33:03 289

转载 6-8 Java 包

Java 包为了更好地组织类,Java 提供了包机制,用于区别类名的命名空间。包的作用1、把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用。2、如同文件夹一样,包也采用了树形目录的存储方式。同一个包中的类名字是不同的,不同的包中的类的名字是可以相同的,当同时调用两个不同包中相同类名的类时,应该加上包名加以区别。因此,包可以避免名字冲突。3、包也限定了访问权限,拥有包访问权限的类才能访问某个包中的类。语法格式为:package pkg1[.pkg2[.pkg3…]];创建包

2021-02-01 09:41:51 82

转载 6-7 Java 枚举

Java 枚举Java 枚举是一个特殊的类,一般表示一组常量,比如一年的 4 个季节,一个年的 12 个月份,一个星期的 7 天,方向有东南西北等。Java 枚举类使用 enum 关键字来定义,各个常量使用逗号 , 来分割。enum Color { RED, GREEN, BLUE; } 举例:enum Color{ RED, GREEN, BLUE;} public class Test{ // 执行输出结果 public static void

2021-02-01 09:41:19 165

转载 6-6 Java 接口

Java 接口接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要实现的方法。除非实现接口的类是抽象类,否则该类要定义接口中的所有方法。接口无法被实例化,但是可以被实现。一个实现接口的类,必须实现接口内所描述的所有方法,否则就必须声明为抽象类。另外,在 Java 中,接口类型可

2021-02-01 09:40:37 638

转载 6-5 Java 封装

Java 封装在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法。封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。要访问该类的代码和数据,必须通过严格的接口控制。封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。封装的优点良好的封装能够减少耦合。类内部的结构可以自由修改。

2021-02-01 09:39:10 132

转载 6-4 Java 抽象类

Java 抽象类在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样。由于抽象类不能实例化对象,所以抽象类必须被继承,才能被使用。也是因为这个原因,通常在设计阶段决定要不要设计抽象类。父类包含了子类集合的常见的方法,但是由于父类本身是抽象的,所以不能使用这些方法。在Java中抽象类表

2021-02-01 09:38:09 83

转载 6-3 多态

Java 多态多态是同一个行为具有多个不同表现形式或形态的能力。多态就是同一个接口,使用不同的实例而执行不同操作。多态的优点消除类型之间的耦合关系可替换性可扩充性接口性灵活性简化性多态存在的三个必要条件继承重写父类引用指向子类对象:Parent p = new Child();举例:class Shape { void draw() {}} class Circle extends Shape { v

2021-02-01 09:36:34 118

MNIST手写数字集(训练集和测试集)

MNIST手写数字集(训练集和测试集)

2022-02-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除