--
数组 1,1,2,3,5,8,13,21....................
javascript递归算法计算第32位数字
<script type="text/javascript">
//1,1,2,3,5,8,13..........(32)
function recursion(num){
if(num <= 0){
return 0;
}else if(num > 0 && num <= 2){
return 1
}else{
return recursion(num-1) + recursion(num -2);
}
}
window.onload=function(){
var s=recursion(32);
alert("result:"+s);
}
</script>
--
冒泡泡排序方法
//数组排序
var mArray = [88,1,7,5,3,9,2,8,22];
//冒泡泡排序方法
function Sort(arr) {
//var arr = Str.split("");
//var arr = [7,5,3,9,2,8,22];
var temp;
for (var i = 0; i < arr.length; i++) {
for (var j = i; j < arr.length; j++) {
if (arr[i] < arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
return arr;
}
alert(Sort(mArray));
--
字符串数据转成json对象
//字符串转json function str2json(str){ var json = (new Function("return " + str))(); return json; } function string2json(str){ return eval('(' + str + ')'); }
--
IE下复制内容到系统剪切板
<input id="publink" type="text" value="http://****.com/m.php?m10866" />
<a href="javascript:void(0)" onclick="clipboardData.setData('Text',document.getElementById('publink').value);" >复制</a></span>
//clipboardData.setData('Text',document.getElementById('publink').value);
--
兼容IE和火狐的复制内容到系统剪切板的代码,但是火狐需要设置:!
//clipboardData.setData('Text',document.getElementById('publink').value); function copyToClipboard(txt) { if(window.clipboardData) { window.clipboardData.clearData(); window.clipboardData.setData("Text", txt); alert("复制成功!") } else if(navigator.userAgent.indexOf("Opera") != -1) { window.location = txt; } else if (window.netscape) { try { netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); } catch (e) { //alert("被浏览器拒绝!\n请在浏览器地址栏输入'about:config'并回车\n然后将'signed.applets.codebase_principal_support'设置为'true'"); alert("被FireFox浏览器拒绝!\n请直接在左侧Ctrl+A,Ctrl+C复制吧!"); } var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard); if (!clip) return; var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable); if (!trans) return; trans.addDataFlavor('text/unicode'); var str = new Object(); var len = new Object(); var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString); var copytext = txt; str.data = copytext; trans.setTransferData("text/unicode",str,copytext.length*2); var clipid = Components.interfaces.nsIClipboard; if (!clip) return false; clip.setData(trans,null,clipid.kGlobalClipboard); alert("复制成功!") } }
--
<a href="javascript:history.go(-1)">返回</a>
window.location.href = "member.php?action=detail&user_id=520";
--
--
javascript翻转字符串,很老掉牙的js题,可是每个招js的单位还总是出这样的题!
哎,难道各家公司的招聘题目都是从网上下载的吗、!
var a='a,b,c,d,e,f,g';
//反转字符串的方法
function reversedStr(str){
var m=[];
var n=[];
m=str.split(",");//将字符串根据“,”号分割为数组
for(var i=m.length; i>0;i--){
n.push(m[i-1]);//由大到小存入新数组,因为数组下标从0开始,为数组长度减一,
}
return n.join(",");//将翻转后的数组以“,”连接成一个字符串返回
}
alert(reversedStr(a));//调用方法,反转字符串!
--
在一个方法里要经常debug,查看数据输出,加个时间戳标记一下,其实挺好的。
dt: function(){ return (new Date).getHours() + ":" + (new Date).getMinutes() + ":" + (new Date).getSeconds() + "'" + (new Date).getMilliseconds() + "”"; },