在编写js程序的过程中,可能常常需要判断一个对象的类型,例如你写了一个函数,需要通过判断不同的参数类型来编写不同的代码。 首先可能会想到typeof操作符,看下面的这个例子:var object = {}; var b = true; alert(typeof object + " " + typeof b); 得到的结果如下:从上面的结果可以看到,用typeof操作符可以显示对象的类型,那么typeof操作符作用域null和undefined的结果会是什么呢?/*var object = {}; var b = true; a...
String对象的扩展函数:String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g,""); } String.prototype.ltrim = function() { return this.replace(/^\s+/g,""); } String.prototype.rtrim = function() { return this.replace(/\s+$/g,""); } String.prototype.splitAndTrim = function($delimiter, $limit) { var $ss = this.split($delimiter, $limit); for(var $i=0; $i/g,'>'); } String.prototy...
回调地狱 对 JavaScript 程序员来说,处理回调是家常,但是处理层次过深的回调就没有那么美好了,下面的示例代码片段用了三层回调,再补脑一下更多层的场景,简直是酸爽,这就是传说中的回调地狱。getDirectories(function(dirs) {getFiles(dirs[0], function(files) {getContent(files[0], function(file, content) {console.log('filename:', file);console.log(content);});}); });function getDirectories(callback) {setTimeo...
1.Date 属性(1): constructor 所建立对象的函数参考 prototype 能够为对象加入的属性和方法 方法(43): getDay() 返回一周中的第几天(0-6) getYear() 返回年份.2000年以前为2位,2000(包含)以后为4位 getFullYear() 返回完整的4位年份数 getMonth() 返回月份数(0-11) getDate() 返回日(1-31) getHours() 返回小时数(0-23) getMinutes() 返回分钟(0-59) getSeconds() 返回秒数(0-59) getMilliseconds() 返回毫秒(0-999) getUTCDay() 依...
递增、递减运算符 '); a++; document.write('a++ = ',a,''); b--; document.write('b-- = ',b,''); // [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
windows对象 每个HTML文档的顶层对象. 属性 frames[] 子桢数组.每个子桢数组按源文档中定义的顺序存放. feames.length 子桢个数. self 当前窗口. parent 父窗口(当前窗口是中一个子窗口). top 顶层窗口(是所有可见窗口的父窗口). status 浏览器状态窗口上的消息. defaultStatus 当status无效时,出现在浏览器状态窗口上的缺省消息. name 内部名,为由window.open()方法打开的窗口定义的名字. windows...
首先 我们看.find()方法: 现在有一个页面,里面HTML代码为; 代码如下: 测试1 测试2 如果我们使用find()方法: var $find = $("div").find(".rain"); alert( $find.html() ) ; 将会输出: 如果使用filter()方法: var $filter = $("div").filter(".rain"); alert( $filter.html() ); 将会输出: 也许你已经看出它们的区别了。 find()会在div元素内 寻找 class为rain 的元素。 而filter()则是筛选div的class为rain的元素。 ...
有这张图就够了,简单地说明一下 以Height为例,Width同理: div.clientHeight:可见窗口除去了margin+border之后的长度。 div.offsetHeight:在div.clientHeight的基础上加了border和滚动条的长度。 div.scrollHeight:就是元素内容的实际高度。 以Top为例,Left同理: div.clientTop:margin之后padding之前的长度值。 div.offsetTop:该元素的上border的上边缘 到 该元素的offsetParent的上border内边缘的垂直距离。 div.scroll...
在看 Discuz! 的源码的时候,发现了一段浏览器验证的代码,还是比较经典的: 代码如下: var BROWSER = {}; var USERAGENT = navigator.userAgent.toLowerCase(); alert(USERAGENT); BROWSER.ie = window.ActiveXObject && USERAGENT.indexOf(msie) != -1 && USERAGENT.substr(USERAGENT.indexOf(msie) + 5, 3); BROWSER.firefox = document.getBoxObjectFor && USERAGENT.indexOf(firefox) != -1 && USERAGENT.substr(USERAGENT.i...
一 页面输出 1.头部文件 代码如下: document.write("脚本之家www.gxlcms.com"); 2.页面内 代码如下: document.write("脚本之家"); 3.外部文件 4.利用页面ID的innerHtml 代码如下: window.onload = writeMessage; // 页面加载时调用writeMessage函数 writeMessage() { document.getElementById("helloMessage").innerHTML = "脚本之家"; //找到dom ID(helloMessage),修改其html内容 } 5.警告 alert("广州百汇物...
javascript有两种数据类型的转换方法: (一)将整个值从一种类型转换为另一种数据类型(称作基本数据类型转换) (二)从一个值中提取另一种类型的值,并完成转换工作 基本数据类型转换的三种方法: 1.转换为字符型:String(); 例:String(678)的结果为"678" 2.转换为数值型:Number(); 例:Number("678")的结果为678 3.转换为布尔型:Boolean(); 例:Boolean("aaa")的结果为true 从一个值中提取另一种类型的值的方法: 1.提取字符...
中午的时候稍微研究了下javascript function中的arguments 代码如下: window.onload = function() { (function(arg1, arg2) { alert(arguments.length); alert(arguments.callee.length); })(); } 其中观察了下arguments.length和arguments.callee 首先arguments当然只在function体内才有意义, arguments.length 返回的是传入function的实参个数,比如我这里没有传入什么,而是直接运行了一个匿名函数,那么第一个alert肯定是'0', ...
网上收集的KeyCode值方便大家查找: keycode 8 = BackSpace BackSpace keycode 9 = Tab Tab keycode 12 = Clear keycode 13 = Enter keycode 16 = Shift_L keycode 17 = Control_L keycode 18 = Alt_L keycode 19 = Pause keycode 20 = Caps_Lock keycode 27 = Escape Escape keycode 32 = space space keycode 33 = Prior keycode 34 = Next keycode 35 = End keycode 36 = Home keycode 37 = Left keycode 38 = Up keycode 39 = ...
这个方法相当有用,很多编程语言中都有相对应的实现,javascript中也不例外,然而当我在ie中运行如下代码时候: 代码如下: var arr = [1,2,3]; alert(arr.indexOf(1)); 却被提示“对象不支持此属性和方法” 。而在chrome,ff下去运行良好。遂去求问google大神,发现原来js中Array的indexOf方法在js1.6版本中才给予了实现,ie7,8中只实现到了js1.3版本,chrome为js1.7版本,ff为js1.8版本。(ie依旧慢半拍)。无奈,只好针对ie进行扩展...
本人在开发工作中就曾与不按规范来开发的同事合作过,与他合作就不能用“愉快”来形容了。现在本人撰写此文的目的除了与大家分享一点点经验外,更多的是希望对未来的合作伙伴能够起到一定的借鉴作用。当然,如果我说的有不科学的地方还希望各路前辈多多指教。下面分条目列出各种规范要求,这些要求都是针对同事编码毛病提出来的,好些行业约定的其它规范可能不会再提及。 1、保证代码压缩后不出错 对于大型的JavaScript项目,一般...