var

委托 匿名类 var隐式类型 匿名方法

元气小坏坏 提交于 2020-03-27 10:18:26
委托   委托是一个类 它定义了方法的类型 实现了讲一个方法当做另一个方法的参数来传递   (委托的一个有趣且有用的属性是,他不知道也不关心所引用的方法的类 只关心引用的方法是否具有与委托相同的参数和返回类型) 多播委托   每个委托都只包含一个方法调用 调用委托的次数和调用方法的次数相同。如果需要调用委托的一次可以执行多个方法 这时我们就需要多播委托   通俗来讲 多播委托就是一个包含多个方法的委托称为多播委托 事件   基本上说是一个用户操作 如按键 点击 鼠标移动等等 或者是一些出现 如系统生成的通知 应用程序需要在事件发生时响应事件     事件在类中声明且生成 且通过使用同一个类或者其他类中的委托与事件处理程序联 包含的事件的类用于发布事件 这被称为发布器类 其他接受该事件的类被称为订阅器类     发布器是一个包含事件和委托定义的对象。事件和委托之间的联系也定义在这个对象中。发布器类的对象调用这个事件,并且通知其他对象     订阅器是一个接受事件并且提供事件处理程序的对象 在发布器类中的委托调用订阅器类中的方法(事件处理程序) 匿名类   定义:没有名字的类   特点:匿名类不能被引用 只能在创建时用new语句来声明 优势   匿名类提供了一种方便的方法 可用来将一组只读属性封装到单个对象中 而无需首先显示定义一个类型   类型名由编译器生成 并且不能再源代码级使用

accp8.0转换教材第8章JavaScript对象及初识面向对象理解与练习

情到浓时终转凉″ 提交于 2020-03-27 08:55:43
JavaScript数据类型,对象,构造函数,原型对象,初识原型链,对象继承 一.单词部分 ①object父类②constructor构造函数③instance实例④call调用 ⑤apply应用⑥combination组合⑦inheritance继承 二.预习部分 1.简述创建对象的两种方法,以及两者的区别 new 和 字面量赋值 前者要用点.添加属性和方法 后者直接调用 2.简述使用构造函数创建实例的步骤 ①创建一个新对象 ②将构造函数的作用域赋值给新对象 ③执行构造函数代码块 ④返回新对象 3.简述原型链在继承中的作用 它是实现继承的主要方法 三.上机部分 1.创建person对象 <!DOCTYPE html> <html lang=" en"> <head> <meta charset=" UTF-8"> <title>创建person对象 </title> </head> <body> <div id=" aa"> </div> <script> var createTi=document.createElement("p"); var person=new Object(); person.name="郎晓明"; person.age="38"; person.job="中国内地男演员、歌手"; person.address="中国北京海淀区"; person

算法

…衆ロ難τιáo~ 提交于 2020-03-27 07:03:30
快速排序 var arr = [90,9,12,6,30,60,36,32,40]; function quickSort(arr){ if(arr.length<=1){ return arr } var l=Math.floor(arr.length/2) var lo =arr.splice(l,1)[0] var left=[] var right=[] for (var i=0;i<arr.length;i++){ if(arr[i]<=lo){left.push(arr[i])} else{ right.push(arr[i]) } } return quickSort(left).concat([lo],quickSort(right)) } console.log(quickSort(arr)) 来源: https://www.cnblogs.com/chargeworld/p/10884945.html

js 标准二维数组变一维数组的方法

独自空忆成欢 提交于 2020-03-27 06:52:19
问题:[[0, 1], [2, 3], [4, 5]] -> [0, 1, 2, 3, 4, 5]? 方法一 利用 es5 的 arr.reduce(callback[, initialValue]) 实现 var arr1 = [[0, 1], [2, 3], [4, 5]]; var arr2 = arr1.reduce(function (a, b) { return a.concat(b)} ); // arr2 [0, 1, 2, 3, 4, 5] 方法二 利用 es6 var arr1 = [[0, 1], [2, 3], [4, 5]]; function flatten(arr) { return [].concat( ...arr.map(x => Array.isArray(x) ? flatten(x) : x) ) } var arr2 = flatten(arr1); // arr2 [0, 1, 2, 3, 4, 5] 优点: 多维数组也可以 比如:var arr = [[1,2],3,[[[4], 5]]] 方法三 利用 apply 实现 var arr1 = [[0, 1], [2, 3], [4, 5]]; var arr2 = [].concat.apply([], arr1); // arr2 [0, 1, 2, 3, 4, 5] 方法四

[JS] javascript基础语法

一个人想着一个人 提交于 2020-03-27 06:49:32
1.javascript是什么   js是具有面向对象能力的,解释性的程序设计语言. 2.js的类型   [基本类型]:string number boolean   [复合类型]:对象(对象,函数,数组)   [无类型]:null undefiend 3.typeof   语法:string typeof (变量名)  或者  string typeof 变量名   作用:返回这个变量的类型 4.块级作用域   js没有块级作用域的概念.if while等内声明的变量都是和外面声明的变量是同一作用域的. 5.运算符   ==和!=:是判断2个结果是否相等   in:属性是否属于某个对象   instanceof:变量是否属于某个类    add instanceof Function 6.数字类型   js中的数字类型都是浮点数.1===1.00   8进制:0开头  16进制:0x开头    7.NaN  Infinity  IsNaN  IsFinite   NaN:Not a Number    alert(0/0)   Infinity:无限的       alert(0.1/0)   boolean IsNaN(number):  判断不是数字   boolean IsFinite(number):  判断数字是不是有限的 8.string类型方法   string

JavaScript在HTML中的应用

限于喜欢 提交于 2020-03-27 06:48:56
JavaScript概述 JavaScript是基于对象和事件驱动的脚本语言,主要应用在客户端。 特点: 1,交互性(它可以做的就是信息的动态交互) 2,安全性(不允许直接访问本地硬盘) 3,跨平台性(只要是可以解释JS的浏览器都可以执行,和平台无关) JavaScript与Java不同 1,JS是Netscape公司的产品,前身是LiveScript;Java是Sun公司的产品,现在是Oracle公司的产品 2,JS是基于对象,Java是面向对象 3,JS只需解释就可以执行,Java需要先编译成字节码文件,再执行 4,JS是弱类型,Java是强类型 JavaScript与Html的结合方式 想要将其他代码融入到Html中,都是以标签的形式。 1,JS代码存放在标签对<script> js code... </script>中。 2,当有多个html页面使用到相同的JS脚本时,可以将JS代码封装到一个文件中,只要在script标签的src属性引入一个JS文件。(方便后期维护、扩展) 注意:如果在script标签中定义了src属性,那么标签中的内容不会被执行。 例:<script src="test.js" type="text/javascript"></script> 注:规范中script标签早期有一个属性language,而现在使用type属性。 JavaScript语法

jquery数组处理

被刻印的时光 ゝ 提交于 2020-03-27 06:14:23
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title>Hi!</title> <script type="text/javascript" src="../scripts/jquery-1.2.1.js"> </script> <script type="text/javascript"> var $ = 'Hi!'; jQuery(function(){ alert('$ = '+ $);//这里的 $ 为 Hi!,把它变回jquery的符号:jQuery(function($){ }/这样就可以了 //alert(jQuery) }); jQuery(function($){ //------------遍历数组 .each的使用------------- var anArray = ['one','two','three']; $.each(anArray,function(n,value) { //do something here //alert(n+' '+value); }); var anObject = {one:1, two:2, three:3}; $.each(anObject

javascript 解析json

谁说胖子不能爱 提交于 2020-03-27 06:13:35
JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。 JSON 是JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。 JSON的规则很简单: 对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。具体细节参考 http://www.json.org/json-zh.html 举个简单的例子: js 代码 function showJSON() { var user = { "username":"andy", "age":20, "info": { "tel": "123456", "cellphone": "98765"}, "address": [ {"city":"beijing","postcode":"222333"}, {"city":"newyork","postcode":"555666"} ] } alert(user.username); alert(user.age); alert(user.info.cellphone); alert(user.address[0].city); alert(user

JSON基本介绍

拈花ヽ惹草 提交于 2020-03-27 06:13:03
导读:   JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。JSON 是JavaScript 原生格式,这意味着在JavaScript 中处理JSON 数据不需要任何特殊的API 或工具包。   JSON的规则很简单:对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’对”之间使用“,”(逗号)分隔。具体细节参考http://www.json.org/json-zh.html   举个简单的例子:    js 代码   function showJSON() {   var user =   {   "username":"andy",   "age":20,   "info": { "tel": "123456", "cellphone": "98765"},   "address":   [   {"city":"beijing","postcode":"222333"},   {"city":"newyork","postcode":"555666"}   ]   }      alert(user.username);   alert(user.age);   alert(user.info.cellphone);   alert

js部分高级内容

守給你的承諾、 提交于 2020-03-27 06:06:01
数据类型 基本:String,Number,boolean(true,false),undefined(undefined),null(null) 引用类型:Object,Function(可以执行),Array(数值下标,有序) 特别地,null无值的对象(用来清空对象),NaN无值的数字,undefined不存在或者存在未赋值 typeof 返回数据类型的字符串形式(小写) 判断字符串,数值,布尔,函数可行。未定义和undefined都返回undefined也勉强可,null和其他引用类型返回object不可(null和undefined用===) instanceof判断实例对象与类(沿原型链向上找)的关系,返回布尔值 var声明局部变量(不可删),直接赋值沿原型链向上找成window的一个属性(可删) 沿作用域链找不到没定义报错,沿原型链找不到是undefined 只有通过属性改变的引用对象才使相同的改变 obj.age=15//有效 obj={age:15}//无效,更改了引用地址 function fn(obj){console.log(obj)}//函数传入的obj是传入参数的一个引用值,与原变量无关(重要),一种基本值,一种引用值(地址) 自动释放和垃圾回收器回收 function fn(){var b={name:'alice'}} //未被引用的才会被释放回收