作者: 阮一峰原文链接:http://www.ruanyifeng.com/blog/2011/06/designing_ideas_of_inheritance_mechanism_in_javascript.html我一直很难理解Javascript语言的继承机制。它没有"子类"和"父类"的概念,也没有"类"(class)和"实例"(instance)的区分,全靠一种很奇特的"原型链"(prototype chain)模式,来实现继承。我花了很多时间,学习这个部分,还做了很多笔记。但是都属于强行记忆,无法从根本上理解。直到昨天,我读到法国...
没有一门编程语言是完美的,JavaScript 也不例外,它语法陷阱重重,防不胜防:加号"with"分号自动插入声明提升"eval"多行字符串变量泄漏"arguments.callee"...了解和熟悉这些陷阱,并在开发时注意规避它们,可以给我们省去很多麻烦事。加号作为二元运算符时,+ 既是数学运算的加法,也是字符串的拼接。另外,它还可以作为一元符号,表示正数。看看下面的代码:// 1
console.log( 1 + 2 ); // 3
console.log( "3" + "4" ); // "...
var UseIScrollDataHelper = {myScroll: null, //iScroll对象scrollId: ‘divscroll‘,//默认scrollidwrapperId: ‘wrapper‘,//默认wrapperidfillList: null, //对应的回调函数isMore: false, //是否可刷新标记isNoData: false, //是否无数据isLoading: false,//是否加载数据中isUsePage: true, //是否使用分页headOffSetHeight:0, //顶部预留高度pageIndex: 1,pageSize: 10,url: ‘‘,datas: ‘‘}var renYuanScroller =...
有的时候,需要检查用户是否修改了一个表单中的内容,则可以使用下面的技巧,其中如果修改了表单的内容则返回true,没修改表单的内容则返回false。代码如下:
function formIsDirty(form) { for (var i = 0; i < form.elements.length; i++) { var element = form.elements[i]; var type = element.type; if (type == "checkbox" || type == "radio") { if (element.checked != elem...
1、为什么要模块化 嵌入网页的javascript代码越来越庞大,越来越复杂,需要一个团队分工协作、进度管理、单元测试等,模块化编程,已经成为一个迫切的需求。此外:模块化编程解决的问题有:命名冲突问题,文件依赖问题等等。一言以蔽之:模块化就是分解代码。2、什么是模块模块就是实现特定功能的一组方法。只要把不同的函数(以及记录状态的变量)简单地放在一起,就算是一个模块。有了模块,我们可以更方便地使用别人的代码,想...
Function(函数)类型实际上是对象。每个函数都是Function类型的实例,而且都与其他引用类型一样具有属性和方法。由于函数是对象,因此函数名实际上也是一个指向函数对象的指针。一.函数的声明方式1.普通的函数声明function laber(num1, num2) {return num1+ num2;
}2.使用变量初始化函数var laber = function(num1, num2) {return num1 + num2;
};3.使用Function构造函数 ps:不建议用这种方式var laber = new Function(‘num1‘, ‘...
客户端JavaScript:客户端就是Web浏览器;一、 前奏: Web文档(document):一些呈现静态信息的页面,虽然有的页面是会动的,但信息本身还是静态! Web应用:可以动态载入信息,相比与文档的文本化,应用看起来更加图形化; 客户端JavaScript的三个重要的对象:Window Document和Element;Window是全局对象,它的属性和方法是全局变量和全局函数,其中里面的属性location指向Location对象,Location对象指定当前...
流程控制主要有三种结构:顺序结构、分支结构、循环结构。 分支结构if ( ){ }if ( ){ } elseif ( ){ } // 双分支if ( ){ } elseif ( ){ } else { } // 多分支
( ) ? ( ) : ( ) // 三元表达式switch casebreakdefault1. switch 后的括号理论上是表达式,但开发中为了方便控制,常输入变量。2. switch 与 case 的值必须全等才能执行操作。 (注意变量类型)3. 如果没有...
在CORS出现之前,为实现跨域Ajax通信,开发人员利用DOM中能够执行跨域请求的功能,在不依赖XHR对象的情况下也能发送某种请求。1、图像Ping这里使用<img>标签。一个网页可以从任何网页中加载图像,不用担心跨域或不跨域。动态创建图像经常用于图像Ping。图像Ping是与服务器进行简单、单向的跨域通信的一种方式。请求的数据:以查询字符串形式发送响应的数据:可以是任意内容,但通常是像素图或204响应1var img = new Image();
2 img...
1.Javascript的typeof可能返回的结果有哪些? 答:共6种,具体为number ,boolean,string,undefined,function,object(对象或者null返回的是object) 原文:http://www.cnblogs.com/wood2012/p/7900335.html
这是第一次发博,博主属于菜鸟系列,如果有不对的地方欢迎指教,直接分享实例,非常好用,不过要注意各个div的z-index属性 1//拖动 “需要给id=show的div加上绝对定位position:absolute;” 2 window.onload = function()3 {4var div1 = document.getElementById("show");5 div1.onmousedown = function(ev){6var oevent = ev || event;7var distanceX = oevent.clientX - div1.offsetLeft;8var distanceY = oevent....
依然第十三章 事件1、页面上的所有元素都支持鼠标事件,除了mouseenter和mouseleave,所有鼠标事件都会冒泡。2、修改键:shift、ctrl、alt、meta。四个属性表示修改键的状态:shiftKey等。3、event对象的relatedTarget属性提供了相关元素的信息。只对mouseover和mouseout事件才包含值。4、对“事件处理程序过多”问题的解决方案就是事件委托。事件委托利用时间冒泡,只指定一个事件处理程序,就可以管理某一类型的所有事件。最适合...
the 4 point about This: 1.the use of Object methods 2.the use of constructors 3.the use of ordinary function 4.the use of Function.prototype.call or Function.prototype.apply<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title>this of point</title><script>/*the use of Object methods*/var func={a:2,getA:function(){alert(this.a);}};func.getA();/*the use of ordinary function*/window.na...
controller: StringBuilder s = new StringBuilder();string a = "<script>alert(‘我StringBuilder‘)</script>文档内容";s.AppendFormat("<h1>{0}</h1><h1>测试</h1>", a);string t=s.ToString();ViewBag.newMes = t;cshtml:<div id="haha"></div><script type="text/javascript">$(document).ready(function () {var newMes =‘@Ajax.JavaScriptStringEncode(ViewBag.newMes)‘;document.getElementById("haha").inn...
判断判断是我们生活中非常常见,是人们的基本推理能力之一。如判断力一个学生考试成绩是否及格,有及格线60分,达到60分就及格,未达到60分不及格需补考。计算机也采用判断来做逻辑推理。计算机中的判断由两部分组成:1.一个进行判断的表达式,它会返回一个值。2.一个条件语句,用于说明在某种特定情况下应该执行什么操作。如上图所示,进行判断的表达式是黄色菱形,成绩达到60分;条件语句有两个,一个是达到的,蓝色矩形,恭喜通...