数组原型方法调用及函数apply调用时类数组参数在IE8或以下版本的问题


当函数以 apply 方式调用时, 传参方式是一个由各个参数组成的数组或类数组(一个有length属性的对象),传入参数个数取决于 length 的值,例如,某个对象 args.length=3; apply 会将 args[0],args[1],args[2] 三个参数传入,如果对应的值不存在则传入了undefined.

例如:

function f(a,b,c){ console.log(a,b,c);}
f.apply(null,{0:123,1:456,2:789,length:2});//123 456 undefined ,因为 length 属性值为2,值只传入了 2 个参数
f.apply(null,{10:123,11:456,12:789,length:3});// undefined undefined undefined , 因为参数对象不存在以 0、1、2 为...


5年前9月30日 阅读:96 评论:0

谷歌阻止苹果,谁来阻止谷歌(转)


概述:在移动市场上,从来没有一个公司像Google一样的玩法,以后可能也不会有。因为这根本就不是一个商业模式。它可以调动极大的资源而几乎没有盈利压力,它力逾千钧又身段灵活。它从来不尊重这个市场原有的商业模式 —— 从某种意义上来讲,Google进入任何一个市场都是这个市场原有王者的一场悲剧。

移动通讯行业的历史

自从这个世界上发明了数字移动通信网络以后,同学们能用手机打电话主要靠俩帮人在做生意:一伙人是弄基站的,基站弄好了才有信号啊! 一伙人是卖手机的,这样你买个手机就可以在有信号的地方打电话了,整个行业就这么简单。前者叫运营商,比如中国移动,欧洲沃达丰,后者叫手机制造商,比如诺基亚和山寨机。

在很久很久以前(华为出现以前),基站造价特别贵,运营商如果想要信号好,就得买很多基站。华为的低价搏杀直接导致整个电信设备市场屌丝化,但是运营商要把网络弄到让你在家厕所里面信号还是满格儿的,投资还是很贵的。...


5年前5月31日 阅读:117 评论:0

Javascript中模拟PHP的print_r函数


有些效果出不来,比如变量类型是object类型的不能完全打印!

function print_r(array, return_val) {
	var output = '', pad_char = ' ', pad_val = 4, d = this.window.document,
	getFuncName = function (fn) {
		var name = (/\W*function\s+([\w\$]+)\s*\(/).exec(fn);
		if (!name) {
			return '(Anonymous)';
		}
		return name[1];
	},
	repeat_char = function (len, pad_char) {
		var str = '';
		for (var i = 0; i < len; i++)...


7年前10月8日 阅读:47 评论:0

获取js后所带的参数,如:a.js?a=value1&amp;b=value2


将以下代码保存为:a.js

function querystring(){      
    this.params = new Object();      
    this.initialize = function(){      
		var param=this.paramstring();      
		if(param.length == 0) return;      
		if(param.substring(0,1)=='?'){      
			param=param.substring(1);      
		}      
		param = param.replace(/\+/g, ' ');      
		var args = param.split('&amp;');		  
		for (var i=0;i<a...


10年前9月11日 阅读:52 评论:0

一个简单的Ajax类


/**  
	Powered By CMSDream Copyright © 2007-2008 All rights reserved.  
	14:21 2008-5-10  
**/  
function CMSDreamAjaxLib(){   
	/**//**  
	成员变量  
	*/  
	this.XMLHttpReq = null;		//XML对象   
	this.method = "post";		//执行的方法(post/get)   
	this.url = "";			//异步调用的页面地址   
	this.responseText = "";		//异步返回的响应字符串   
	this.responseXML = "";		//异步返回的响应XM...


10年前9月8日 阅读:51 评论:0

动态加载样式元素的函数(兼容IE,FireFox,Opera)


如题,目前只对IE,FireFox,Opera这三种浏览器的兼容性进行过测试,其它浏览器还未测试。

有兴趣的朋友可以研究一下,应该也没问题的。

function AttachStyle(styDom, styCss, styId){   
	var istyle = styDom.createElement('style');   
	istyle.setAttribute("type", "text/css");   
	if(styId!=null){if(!document.getElementById(styId)){istyle.setAttribute("id", styId);}}   
	if (istyle.styleSheet){   
		istyle.styleSheet.cssText=styC...


10年前9月7日 阅读:56 评论:0

非常好用的Js的querystring类


/**  
	Powered By CMSDream Copyright © 2007-2008 All rights reserved.  
	15:10 2008-6-7  
**/  
function querystring(paramstring){   
	this.url=window.location.href;   
	this.params = new Object();   
	this.initialize = function(){   
		if(paramstring.length == 0) return;   
		if(paramstring.substring(0,1)=='?'){   
			paramstring=paramstring.substring(1);   
		}   
		paramstring = p...


10年前6月7日 阅读:66 评论:0

获取字符串长度的函数(ASP/VB/JS)


function strLen(str){      
	var len=0;      
	for(var i=0;i<str.length;i++){      
		var intCode=str.charCodeAt(i);      
		if(intCode>=0 &amp;&amp; intCode<=128){      
			len = len + 1;      
		}else{      
			len = len + 2;      
		}      
	}      
    return len;      
}



Private Function Length(iTxt)   
	Dim txt: txt = Trim(iTxt)   
	Dim x: x = Len(txt)   
...


11年前6月7日 阅读:74 评论:0

VB将域名转换成IP地址


Option Explicit   
  
Private Type HOSTENT   
	hName As Long  
	hAliases As Long  
	hAddrType As Integer  
	hLength As Integer  
	hAddrList As Long  
End Type   
  
Private Type WSADATA   
	wversion As Integer  
	wHighVersion As Integer  
	szDescription(0 To 256) As Byte  
	szSystemStatus(0 To 128) As Byte  
	iMaxSockets As Integer  
	iMaxUdpDg As Integer  
	lpszVendorInfo As Long...


11年前4月8日 阅读:91 评论:0

顶部