最近这段时间大多时候都在调试页面,弄了很久也不太满意,怒了,回去专门看了几天的关于CSS的书,带着些惊恐还是决定试下,基本上搞定了,从此后对页面布局样式等不再感到那么无助与厌恶了。看来以前之所以进步不大,那是压力不够啊!
最近看了下dwr这个东西,虽然很久没更新了,现在项目中用得还是比较多,虽然本人也知道它性能不太好,但用起来确实方便,没办法。所以决定有空好好看看它的实现方式。从中也学到了不少东西。
1.一个方法实现多种参数方式的调用。
如append方法,如果只有一个调用可以这样:
function append(a) {
return a;
}
如果有两个参数,正常情况下得再写个方法:
function append(a,b) {
return a+b;
}
有没有可能只写一个方法就能搞定呢?虽然以前不知道,但现在知道了,那就是有!
新式写法:
function append(a/*,b*/) {
var argcount = arguments.length;
var lastarg = arguments[argcount - 1];
var arg=0;
if(argcount>1){
arg=lastarg;
return a+b;
}
return a;
}
上面的例子稍微再改装下,就可以适用于3个或者更多的参数了:
function append(a/*,b*/) {
var argcount = arguments.length;
if(argcount>1){
var sum = a;
for(var i=1;i<argcount;i++){
sum = sum+arguments[i];
}
return sum;
}
return a;
}
现在就可以直接使用了:
function foo() {
alert(append(10));
alert(append(2,3,4,5));
}
2.javascript中的==与===的区别
http://bonsaiden.github.com/JavaScript-Garden/
上面这个链接讲得还算详细,虽然是英文的,总结下就是,==比较会先将两边的值转换成同样的类型,然后再进行比较,此举在性能上也有所影响。而===则按照严格的规则,不进行任何转换,与java的对象比较差不多,不但值要相同,引用也要一样。所以基本上都推荐用===来进行比较。
3.undefined 与null
undefined 这个东西平时虽然有见过,但基本上没用过,javascript定义了一个叫undefined 的全局变量,同时该全局变量的值也叫undefined,它既不是关键字也不是常量,所以可以手动覆盖它的值。会出现undefined的地方有以下几种情况:
(1).访问全局变量undefined
(2).访问一个没有return的函数
(3).访问一个只包含return;没有给定具体值的函数
(4).访问一个不存在的属性
(5).访问没有传入明确的参数的函数
至于null,在javascript内部用得比较多,基本上能用null的地方都可以用undefined替代。
4.访问函数参数arguments
每个函数都可以访问变量arguments,它包含所有的函数参数值,不过arguments并不是一个数组,因此pop、push与slice等方法不能使用,不过用还是可以使用for循环的访问遍历,即:
for(var i=0;i<arguments.length;i++){
alert(arguments[i]);
}
5.闭包
其实闭包这种东西本人很少用过,本来写的js代码就不多,怎么能用到这些高级货呢?先给个例子:
function Counter(start) {
var count = start;
return {
increment: function() {
count++;
},
get: function() {
return count;
}
}
}
var foo = Counter(4);
foo.increment();
foo.get(); // 5
其中上面的increment与get函数就是闭包,这个东西与java的内部类比较相似。
分享到:
相关推荐
但也许你还没有发现并应用它的一些更高级的功能吧?比如,对文件和文件夹进行读、写和删除,就象在VB、VC等高级语言中经常做的工作一样。怎么样,你是否需要了解这方面的知识?那就请跟我来,本文将详细描述如何使用...
《JavaScript和jQuery...通过学习本书,读者不仅能够掌握JavaScript编程的各项技术细节,还能体会到不断剖析、层层递进解决问题的思路。让读者在实践中学,轻松地掌握使用JavaScript和jQuery开发Web应用的有用技能。
最为难得的是,由于具有丰富的业界实践经验,作者在《JavaScript 精粹》中不仅仅提出了对各种问题的解决方法,还展现了自己的思考方法和一些良好的程序设计习惯,与具体的细节性知识相比,这些无疑更加具有价值。...
主要介绍了你所不了解的javascript操作DOM的细节知识点的相关资料,需要的朋友可以参考下
JavaScript的性能问题不容小觑,这就需要我们开发人员在编写JavaScript程序时多注意一些细节,本文非常详细的介绍了一下JavaScript性能优化方面的知识点,绝对是干货。 先给大家巩固下javascript基本语法: ...
《基于JavaScript的JSON数组的购物车项目》——虽然只是一个简单的购物车项目,但它综合运用了HTML、CSS、Json.JavaScript等相关的知识,特别适合刚刚入门前端的小伙伴进行学习和借鉴,可以帮助小伙伴们将前端开发的...
JavaScript的性能问题不容小觑,这就需要我们开发人员在编写JavaScript程序时多注意一些细节,本文给大家介绍javascript性能优化之小知识总结,需要的朋友可以参考下
本文是jQuery系列教程的剧场版, 即和jQuery这条主线无关, 主要介绍大家平时会忽略的一些javascript细节. 适合希望巩固javascript理论知识和基础知识的开发人员阅读. 二.前言 最近面试过一些人, 发现即使经验丰富...
JavaScript程序设计 面向过程与面向对象 6.1.1 面向过程与面向对象 1、概念 面向过程(Procedure Oriented)也可称之为“面向记录”,是一种以过程为中心的编程思想。它注重的是具体的步骤,只有按照步骤一步一步...
学习JavaScript的一本很好的数据,内容讲解比较细致,深入浅出的介绍了日常开发中常用的一些js知识细节,分析讲解比较到位,很值得推荐的一本js学习资料,希望对js学习爱好者能提供一些帮助。
在每天的文件夹中,我记下了我所学到的更多细节! 让我们在评论时参考它:) 审查 210310 挑战始于JavaScript,css和html语法。 它开始于12月19日,20日。 中间也有忙碌的工作,所以这不是30天的挑战,但我学到了很...
它集成了大量的常用库和框架,如MyBatis、SpringMVC、SpringDataJPA等,使得开发者可以专注于业务逻辑的开发,而不需要关心底层的技术细节。 此外,该系统还包含了部署说明和演示视频,可以帮助用户更好地理解和...
力求以最简单的方法与大家一起探讨Web标准进行网页设计的方方面面,以CSS布局为全书的主体内容,探讨CSS布局的入门知识与高级技巧等,从版式布局到细节设计再到浏览器兼容性,逐步学习与掌握CSS布局。希望能够帮助...
它可以将小程序中的JavaScript代码、WXML文件和WXSS样式表等资源还原成可读性较高的格式,方便开发者进行分析和修改。 适用人群包括小程序开发者、安全研究人员、黑客等。使用场景主要是在需要对已发布的小程序进行...
JavaScript+js语法基础+js数据类型+js数据类型转换+js运算符 我学习js的第二天,通过老师讲解总结的一份js语法基础,适用于初学者学习js基础语法,知识点相对来说比较细节。
1.网页设计与开发课程的...3.写了一个星期,不容易,天天熬夜的成果,调位置这些细节真的很折磨人。 4.不是自己设计的,仿照着别人的布局做的,但是交作业不成问题 5.上次的上传错误,上次下载我的同学,私聊我私发给你
初学JavaScript,注意以下七大细节,在实现同样功能的情况下,让我们的代码更易懂、效率更高。 一、简化代码 例如:创建对象 之前是这样的: Var car = new object(); Car.color = “red”; Car.wheels = 4; Car.age...
其次,学习到一定程度JavaScript和css的同学也可以拿来做一些练习,此项目复杂程度不高,但就是繁琐,因为你一定要在每个细节上都有所照料到,对于你的学习相信肯定会让你有进步的。 并且想要修改的话,其实也非常...