EcmaScript有两种属性 数据属性 和 访问器属性 数据属性有4个特性 Configurable Enumerable Writable Value   前三个值的默认值都为false   举例 Object.defineProperty( person, "name", { writable:false, value:"niko"} ) ;   一旦属性定义为不可配置的,就不能再把它变回可配置的了 读取属性 的特性 var descriptor  = O…
创建对象主要的两种形式,创建Object实例和创建对象字面量 对象包含属性和方法 数据 .属性有四个特性,特性是为了描述属性行为的,他们是: Configurable(可配置的)是否能删除或是否能修改为访问器属性 Enumerable(枚举)是否能够for-in Writeable(可写)能否修改属性值 Value(值)默认为undefined,从这个位置上读数据或把新值保存到这个位置上 eg: var person = {}'; Object.defineproperty(person,"na…
读书笔记 - js高级程序设计 - 第十三章 事件   canvas 具备绘图能力的2D上下文 及文本API 很多浏览器对WebGL的3D上下文支持还不够好   有时候即使浏览器支持,操作系统如果缺缺乏必要的绘图驱动程序,则浏览器即使支持了也没用   <canvas> var drawing = document.getElementById("drawing"); if( drawing.getContext ){     drawing.getContext("…
第六章  基本图形 6.1条形图 条形图通过垂直的或水平的条形展示了类别型变量的分布(频数).函数:barplot(height) 6.1.1简单的条形图 6.1.2推砌条形图和分组条形图 如果height是一个矩阵而不是一个向量,则绘图结果将是一幅堆砌条形图或分组条形图.若beside=FALSE(默认值),则矩阵中的每一列都将生成图中的一个条形,各列中的值将给出堆砌的“子条”的高度.若beside=TRUE,则矩阵中的每一列都表示一个分组,各列中的值将并列而不是堆砌. 6.1.3均值条形图…
  引用类型 和 类 不是一个概念 用typeof来检测属性是否存在 typeof args.name == "string"  需要实验 访问属性的方法 .号和[] 一般情况下要用. 判断是否是数组 Array.isArray( a )  数组变字符串 array.join("||") ; 重排序 reverse sort sort( compare )    function compare(a, b){    if( a > b ) return 1 …
  Node类型的变化   访问元素的样式 myDiv.style.backgroundColor = "red" myDiv.style.width = "100px"   计算的样式 记住所有计算的样式都是只读的 偏移量 offsetHeight 外边框外 offsetWidth  offsetLeft  外边框外 到 左端 offsetTop  客户区的大小 clientWidth  内边框外缘 clientHeight 内边框外缘 滚动大小 scrollHe…
  对DOM的两个主要的扩展 Selectors API HTML5  Element Traversal 元素遍历规范 querySelector var body = document.querySelector("body"); var myDiv = document.querySelector("#myDiv"); 取得id为myDiv的元素 var selected = document.querySelector(".selected&quo…
  闭包 有权访问另一个函数作用域中的变量的函数 匿名函数 函数没有名字 少用闭包 由于闭包会携带包含它的函数的作用域,因此会比其它函数占用更多的内存.过度使用闭包可能会导致内存占用过多,我们建议读者只在绝对必要时再考虑使用闭包 模块模式   增强的模块模式   特权方法 有权访问私有变量的公有方法叫做特权方法 块级作用域   实现单例的特权方法  …
  5种基本数据类型 可以直接对值操作 判断引用类型 var result = instanceof Array 执行环境 每个执行环境都有一个与之关联的变量对象,环境中定义的所有变量和函数都保存在这个对象中 执行环境的销毁 某个执行环境中的所有代码执行完毕后 该环境被销毁 保存在其中的所有变量了函数定义也会随之销毁 作用域链中的对象 全局执行环境的变更对象始终都是作用域链中的最后一个对象 没有块级作用域 if 和 for 内的变量 外部也可以访问 标记清除 不同浏览器 只不过垃圾时间的长短不同…
启用严格模式 "use strict" 这是一个 pragma 编译指示 让编码意图更清晰  是一个重要原则 5种简单数据类型 Undefined Null Boolean Number String 1种复杂数据类型 Object 检测数据类型的方法 typeof 有如下值: undefined boolean object string number function typeof Null object 意在保存对象还没有保存对象的变量的初始值最好是什么 null 八进制的第一位…
  文档元素 是文档的最外层元素,在Html页面中,文档元素始终都是<html>元素 在xml中,任何元素都可以是文档元素 Node类型 Node.ELEMENT_NODE 元素 Node.ATTRIBUTE_NODE 属性 Node.TEXT_NODE 文本元素 Node.CDATA_SECTION_NODE  Node.ENTITY_REFERENCE_NODE Node.ENTITY_NODE Node.PROCESSING_INSTRUCTION_NODE; Node.COMMENT_…
  BOM的核心对象是window 它表示浏览器的一个实例,在浏览器中,window对象有双重角色,它既是通过js访问浏览器窗口的一个接口,又是ECMAScript规定的Global对象,这意味着在网页中定义的任何一个对象,变量 和 函数  都以window作为其Global函数 窗口关系和frame 每个frame都有自己的window对象,并且保存在frames集合中, 在frames集合中,可能通过数值索引 或者 框架名称来访问 相应的 window 对象 top 始终指向 最高层的 框架…
面向对象程序设计 ECMA-262将对象定义为:“无序属性的集合,其属性可以包含基本值.对象或者函数.”严格来讲,这就相当于说对象是一组没有特定顺序的值.对象的每个属性和方法都有一个名字,而每个名字都映射到一个值. 6.1理解对象 创建对象的最简单方式就是创造一个Object实例,然后再为它添加属性和方法,如下所示: var person = new Object(); person.name = 'yyg'; person.age = 23; person.job = 'student; pe…
理解对象的概念  js中的对象与其他 编程语言中的类不一样  ECMAscript 没有类的概念      ECMA-262 把对象定义为 “无序属性的集合,其属性可以包含基本值,对象或者函数”   也就是键值对   可以理解成散列表  示例简单的创建一个对象 var person = new Object(); person.name = "zhangsan" person.age = 20; person.sayhi = function (){ return "myNa…
6.3直方图 hist() 其中的x是一个由数据值组成的数值向量.参数freq=FALSE表示根据概率密度而不是频数绘制图形.参数breaks用于控制组的数量.在定义直方图中的单元时,默认将生成等距切分. par(mfrow=c(2,2)) hist(mtcars$mpg)#简单直方图 hist(mtcars$mpg#指定组数和颜色         breaks=12,         col="red",         xlab="Miles Per Gallon&quo…
第六章——面向对象的程序设计 这一章主要讲述了:面向对象的语言由于没有类/接口情况下工作的几种模式以及面向对象语言的继承: 模式:工厂模式,构造函数模式,原型模式 继承:原型式继承,寄生式继承,以及寄生组合式继承…
<C#从现象到本质>读书笔记(九)第11章C#的数据结构 C#中的数据结构可以分为两类:非泛型数据结构和泛型数据结构. 通常迭代器接口需要实现的方法有:1)hasNext,是否还有下一个元素.2)Next,移动到下一个元素.3)Reset,重置. C#中对迭代器模式的实现就是IEnumerable接口. 使用yield关键字实现方法GetEnumerator.yield的延迟执行特性体现在:只有当需要取值时,才会执行,否则状态机的状态就停在0. foreach迭代时,不能直接更改集合成员的值,…
<C#从现象到本质>读书笔记(八)第10章反射 个人感觉,反射其实就是为了能够在程序运行期间动态的加载一个外部的DLL集合,然后通过某种办法找到这个DLL集合中的某个空间下的某个类的某个成员(通过反射可以访问该类所包含的所有成员,不论成员是公有还是私有). 在.NET中,查看和操作元数据的动作,称为反射. 通过反射我们可以:1)加载一个程序集,这称为动态加载程序集或者晚期绑定.2)获得程序集的托管模块(IL+元数据).3)获得程序集中(托管模块中的)类型对象(通过元数据).4)获得类型的成员和…
<C#从现象到本质>读书笔记(七)第9章 泛型 泛型的三大好处:类型安全,增强性能(避免装箱和拆箱),代码复用. 泛型方法是传入的参数至少有一个类型为T(尚未制定的类型,根据微软的命名规则,通常以T开头)的方法.T称为类型参数. 它的使用契机一般为:传入类型可能有很多种.但处理方式却相同的情景.这是可以不需要写很多歌重载,而考虑用泛型方法达到代码复用的目的. 同名的泛型方法和非泛型方法会被编译器看做不同的方法.即使都是泛型方法,不同个数的类型参数也会被编译为不同的方法. 泛型约束使得类型参数只…
<C#从现象到本质>读书笔记(五)第5章字符串 字符串是引用类型,但如果在某方法中,将字符串传入另一方法,在另一方法内部修改,执行完之后,字符串的只并不会改变,而引用类型无论是按值传递还是引用传递,值都会发生变化. 字符串的==操作符被重写为比较字符串的值而不是其引用. 当使用代码将字符串变量等于一个新的值时,堆上会出现一个新的字符串,然后,栈上的变量指向该新字符串.没有任何办法更改原来字符串的值.由于字符串所有非私有的属性和字段都是只读或常量,也没有任何办法修改字符数组的值,字符串的值也就不…
第六章 面向对象 1.面向对象初了解 ​ 面向对象的优点: ​ 1.对相似功能的函数,同一个业务下的函数进行归类,分类 ​ 2.类是一个公共的模板,对象就是从具体的模板中实例化出来的,得到对象就得到一切 类:具有相同属性和功能的一类事物 对象:某个类的具体表现 2.面向对象的结构 class Human:#类名不要用下划线 #第一部分:静态属性 mind = '有思想' #类的属性 (静态属性,静态字段) #第二部分:动态方法 def eat(self):#方法 print('人类都需要吃饭')…
<C#从现象到本质>读书笔记第4章C#和面向对象 面向对象程序设计OOP 面向对象的三大特性是: 1)封装:类可以将它的成员私有化,只暴露它认为应当暴露给外界的成员.通过私有化成员,外界不必了解这些成员的实现细节. 2)继承:子类可以继承父类,从而简单地自动实现父类所有的成员,并增加自己的成员.通过方法的重写和隐藏,子类还可以修改父类的行为. 3)多态:实际上是继承的一种特殊情况,此时,子类一定会复写父类的行为(通常父类没有提供代码).接口和抽象类都是多态的体现. 通过继承和多态,增强代码的复…
书名:Docker+Kubernetes应用开发与快速上云 作者:李文强 出版社:机械工业出版社 出版时间:2020-01 ISBN:9787111643012 [山外笔记-云原生]<Docker_Kubernetes应用开发与快速上云>读书笔记01.pdf 一.山外笔记-前言 1.云原生下的DevOps的解决方案:以Docker为代表的容器技术作为基础保障.以Kubernetes(简称k8s)为代表的容器编排技术作为支撑的解决方案. 2.云原生的实现:以Docker为代表的容器技术+以K8s…
<C#从现象到本质>读书笔记第3章C#类型基础(下) 常量以关键字const修饰.C#支持静态字段(类型字段)和实例字段. 无参属性的get方法不支持参数,而有参属性的get方法支持传入一个或更多参数,set方法支持传入两个或更多参数. 通过属性的封装,保留了它与外部交互的能力,又实现了一种可靠的读写机制. static关键字只能用于类而不能用于结构. 不能显式地为结构声明无参数地构造函数. 静态构造函数的目的是为了安全地给静态成员赋值. 当创建第一个实例之前,堆上没有类型对象,所以要调用静态…
<C#从现象到本质>读书笔记第二篇 第2章 C#类型基础(上) 类型指的是集合{类,结构,接口,枚举,委托}中的任意一个成员.任何拥有某类型的值(value)称为某类型的一个实例(instance). 类型可以被分为值类型(结构,枚举,整型,布尔型,datetime)以及引用类型(类.接口.指针.字符串.委托.数组). C#支持6种类型访问修饰符.访问范围大小排序为: 1)public:没有限制. 2)protected internal:只能在所在程序集.定义的类型或派生类型进行访问. 3)…
最近根据博客园大神的推荐,买了本<C#从现象到本质>.做一点读书笔记. 由于不懂IL和ildasm,winddg,太深奥,理解不了,就牛嚼草一样,先总结第一遍读书,自己总结的知识点了.不知道这样会不会侵权,如果侵权了,请告诉我,我撤销这些. 第一部分“基础知识” 第1章 .NET基础知识 CLR:公共语言运行时 CTS:公共语言系统 CLS:公共语言规范 FCL:框架类库 BCL:基础类库 CLI:公共语言基础设施 DLR:动态语言运行时 TPL:任务并行库 JIT:即时编译 COM:组件对象…
第四章: 重要知识点: 4.1 基础 函数调用是一种特殊的运算符,它对运算对象的数量没有限制. 重载运算符时可以定义运算对象的类型,返回值类型,但运算对象的个数,运算符的优先级,结合律无法改变. 当一个对象被用作左值时,使用的是对象在内存中的位置,当用作右值时,使用的是对象的值.左值有时可以当做右值使用,但右值不能当做左值使用. decltype()函数中,如果表达式的求值结果是左值,则函数得到一个引用类型. 以下由于求值顺序问题造成的结果未定义错误: int i = 0; cout << i…
第六章 利用linux 文件系统权限文件访问 1.linux文件系统权限 文件的权限分为:  rwx  读/写/执行 ls -l  /home   查看/home下文件 ls -ld /home   查看/home文件夹权限 2.管理文件系统 符号法: chomod  whowhatwhich file who  : u用户 g组  o其他  a全部 what : +  -  = which: r  w  x 数值法: r=4  w=2 x=1 -rwxr-x--- = 750 例:  chmo…
  第一章 简介   诞生时间 1995 最初用途 客服端验证 第一版标准 注意是标准 1997年 Ecma-262  一个完整的js实现由三部分组成 ECMAScript DOM 文档对象模型 BOM 浏览器对象模型 ECMAScript的宿主环境 web浏览器 Node(服务器js平台) adobe flash js和as的关系 他们都实现了 ECMAScript 五大主流浏览器 IE Firefox Safari Chrome Opera dom介绍 它是针对xml但经过扩展用于html的…
(一)同一类型和不同类型的多个对象 如果需要使用同一类型的多个对象,就可以使用数组或集合(后面章讲). 如果需要使用不同类型的多个对象,可以使用Tuple(元组)类型. (二)简单数组 如果需要使用同一类型的多个对象,可以使用数组.数组是一种结构,它可以包含同一类型的多个元素. 1.数组的声明 在声明数组时,应先定义数组总元素的类型,其后是一堆空方括号和一个变量名. 例子: 以下代码声明了一个包含整形类型的数组 int[] intArray; 2.数组的初始化 声明了数组后,就必须为数组分配内存…