1、基本数据类型传递参数: 代码如下: funciton addTen(num){ num+=10; return num; } var count=20; var result=addTen(count); alert(count);//20 alert(resullt);//30 执行结果是:20和30。在这段代码中,将变量count当做参数传递给了函数addTen,也就是相当于将变量count的值复制给了函数addTen的参数。这时addTen的参数num可以看做是函数内部的一个变量。在上段代码中,就相当...
代码如下: var a; // 声明一个变量,标识符为a function a() { // 声明一个函数,标示符也为a } alert(typeof a); 显示的是“function”,即function的优先级高于var。 有人觉得这是代码顺序执行的原因,即a被后执行的funcion覆盖了。好,将它们调换下。 代码如下: function a() { } var a; alert(typeof a); 结果仍然显示的是“function”而非“undefined”。即函数声明优先于变量声明。 我们把代码稍作修改,声明a时同时赋值。...
匿名函数,就是没有名字的函数。如: 代码如下: function (){ alert(a function); } 但是,上面的代码会报错。firebug提示:function statement requires a name,也就是:函数必须要有个名字。 奇怪的是,如果我用一对()把这个没有名字的函数包起来,就不会报错了。如: 代码如下: (function (){ alert(a function); }) (注意包裹函数的()!).虽然这样不会报错,但谁能知道这个函数是否声明成功了呢?是不是因为根本没声明所以...
我们在定义函数的时候,函数定义的时候函数本身就会默认有一个prototype的属性,而我们如果用new 运算符来生成一个对象的时候就没有prototype属性。我们来看一个例子,来说明这个 代码如下: function a(c){ this.b = c; this.d =function(){ alert(this.b); } } var obj = new a(test); alert(typeof obj.prototype);//undefine alert(typeof a.prototype);//object 从上面的例子可以看出函数的prototype 属性又指向了一个对象,...
下面我就写几个给大家看看 一,点击传参方法 代码如下: function tab(dom){ var list = document.getElementById("list").getElementsByTagName("li"); var con = document.getElementById("con").getElementsByTagName("div"); for(var i=0;iif(list==dom){ list.className = "on"; con.style.display = "block"; } else{ list.className=""; con.style.display="none"; } } } 1 2 3 4 111111 222222 333333 444444 我解...
如果这个DOM元素没有样式也就谈不上操作了。2.我们也可以直接用JS动态的向html里写入DOM元素。 今天这章我们就讲这两个应用 (一)对html里现有的DOM元素进行操作。 我上面说了,对现有的DOM元素进行操作,无非就是对样式的操作。所以我们首先就要能获取这个DOM元素的样式。在讲获取DOM元素的样式之前。先要说下DOM元素的样式链接方式。有三种。 一是直接在html文档里写入样式例如 。 二是在html文档头部用样式标签插入例如 #dom{...
其实在原生的也JS也有这些属性。和JQ几乎相同但是比JQ少一些。但是用起来却比JQ麻烦一点。主要因为FF浏览器,因为FF会把你的换行也当做一个DOM元素。比如说 代码如下: 我用原生的JS获取ID为dom的元素下的子元素。用我第一章说的方法就是var a = document.getElementById("dom").getElementsByTagName("div");这个没问题。可以alert(a.length)提示会是2,但是我们现在换一种方法获取就是我上章提到的var b = document.getElem...
其实这个应该不列入JS教程的范畴。应为FF,IE6以上浏览器都支持fixed这个固定属性。唯独IE6不支持。所以我为了可恶的IE6。我这里就出一篇教程吧。而且这种效果也可以锻炼同学们的计算能力。以后很多效果都需要你的计算能力。哈哈 固定居中。或者固定在任何地方思想几乎是一样的。只你要算法清楚了。效果写起来就轻而易举了。先贴代码 body,div{padding:0px;margin:0px;} #gd{width:100px;height:100px;background:#F00;color:#FF...
1前言 最近因为项目的需要,使用了一个JQuery插件。把插件下下来后,很快我就发现,很多默认的插件Style不符合项目要求,必须要被修改。 在这个过程中,我发现自己先后使用了多种不同的方法实现插件Style的定制化。很高兴最后找到了我认为最好的方法,对CSS的认识也加深了不少,感触颇多。这篇文章就是对这些新的CSS的认识的一个梳理。 2JQuery 插件Style 定制化方法 2.1 初始化插件时输入定制化对象 做的比较好的插件会在初始化时...
代码如下: function fors(){ obj_a = obj_b; obj_b.attr = obj_a; } 代码如下: function fors(){ obj_b = {}; obj_b.attr = obj_b; } 上面是两个个很显示的循环引用,IE中产生了内存泄露,由于IE的内存回收机制,导至会长期占用内存而不能释放。 但闭包的内存泄露,有些隐蔽。因为闭包的循环引用,是间接的。 代码如下: function iememery(){ var js_obj = document.createElement("div"); js_obj.oncontextmenu = function(){ ...
querySelector和querySelectorAll是W3C提供的新的查询接口 代码如下: module dom { [Supplemental, NoInterfaceObject] interface NodeSelector { Element querySelector(in DOMString selectors); NodeList querySelectorAll(in DOMString selectors); }; Document implements NodeSelector; DocumentFragment implements NodeSelector; Element implements NodeSelector; }; [html] 从接口定义可以看到Document、DocumentFragmen...
getAll方法是私有的,在manipulation模块中。代码只有简单的几行,如下 代码如下: function getAll( elem ) { if ( typeof elem.getElementsByTagName !== "undefined" ) { return elem.getElementsByTagName( "*" ); } else if ( typeof elem.querySelectorAll !== "undefined" ) { return elem.querySelectorAll( "*" ); } else { return []; } } 从函数名可知该方法用来获取传入HTML元素的所有子元素。内部就三个分支 1,先判...
JavaScript区分大小写:在JavaScript中变量、函数都是区分大小写的,例如: 代码如下: function myfunction(){}和 function myFunction(){}不同 JavaScript中核心对象Array、Object等也是区分大小写。 单引号和双引号:这个问题在学SQLServer拼接字符串"select * from page where name='lida'"时就有疑惑:后面都的三个'到底是双引号在前还是单引号在前?学的多了知道,双引号是编程语言使用的,单引号是SQLserver标明字符串类型...
1. 代码如下: function fun() { var a="rxm"; b="cwr"; } alert(a);//错误,a局部变量 alert(b); //"cwr",b全局变量。 2. 代码如下: var a="rxm"; function fun() { alert(a); var a="123"; alert(a); } fun(); alert(a); 输出结果:undefined;123;rxm
1. 参数中存在空格时取到的值中空格被替换为加号:+ 2. 当参数某个key的value不存在时,获取到的value并不是空/null 而是true。 在网上找到了个解决方案,可以参考下(是否有其他副作用暂时未实验出) 1. 空格变加号+ 在jQuery.query.js文件中找到下面代码 代码如下: toString: function() { var i = 0, queryString = [], chunks = [], self = this; var encode = function(str) { str = str + ""; //if ($spaces) str = str.repl...