关于js

来源:互联网 发布:淘宝客服子账号分流 编辑:程序博客网 时间:2024/06/07 07:39

javaScript对于每一个开发人员,大家都应该不陌生,这里我只是简短的找几个例子说来玩玩。

 

1.神奇的数字转换

 

020;  这里表示将八进制数字转换成十进制数字 最终答案:16,还可以进行十六进制的转换,例如:0xFF; 等于:255

1e3;  类似于JAVA 1 * Math.pow(10,3)最终答案:1000

(3.1415).toFixed(3); 保留三位小数 3.142

 

2.不同进制之间的数字转换


你是不是写个单独的函数来转换十六进制(或者八进制)呢?停下来,看看此处:(这里属于转载)

(int).toString(16); // converts int to hex, eg 12 => "C"      
(int).toString(8);  // converts int to octal, eg. 12 => "14"      
parseInt(string,16) // converts hex to int, eg. "FF" => 255      
parseInt(string,8) // converts octal to int, eg. "20" => 16  

 

3.为replace()方法传递一个函数

有的时候你想替换字符串的某个部分为其它的值,最好的方法就是给String.replace()传递一个独立的函数。

下面是实现在线扑克游戏中大量输出的一个简单例子:

var sFlop   = "Flop: [Ah] [Ks] [7c]";      
var aValues = {"A":"Ace","K":"King",7:"Seven"};      
var aSuits  = {"h":"Hearts","s":"Spades","d":"Diamonds","c":"Clubs"};    
sFlop   = sFlop.replace(//[/w+/]/gi, function(match) {           
match   = match.replace(match[2], aSuits[match[2]]);           
match   = match.replace(match[1], aValues[match[1]] +" of ");                 
return match;        });             
// string sFlop now contains:       
// "Flop: [Ace of Hearts] [King of Spades] [Seven of Clubs]"

 

4.使用document.createDocumentFragment()

您可能需要动态地追加多个元素到文档中。然而,直接将它们插入到文档中会导致这个文档每次都需要重新布局一个,
相反的,你应该使用文档碎片,建成后只追加一次:

function doSomething(arg0, arg1, arg2, arg3, arg4) {       
...        }             
doSomething('', 'foo', 5, [], false);  而传递一个对象总是比传递一堆的参数方便:
function createList() {        
  var aLI = ["first item", "second item", "third item","fourth item", "fith item"];  
                // Creates the fragment           
var oFrag   = document.createDocumentFragment();                   
while (aLI.length) {               
var oLI = document.createElement("li");                      
 // Removes the first item from array and appends it              
 // as a text node to LI element               
oLI.appendChild(document.createTextNode(aLI.shift()));               
oFrag.appendChild(oLI);            }                   
document.getElementById('myUL').appendChild(oFrag);        
}

 

5.给函数传递参数

当函数既有必选又有可选参数的时候,我们可能是这样做的:

function doSomething(arg0, arg1, arg2, arg3, arg4) {    
   ...        }     
        doSomething('', 'foo', 5, [], false);  而传递一个对象总是比传递一堆的参数更方便:

function doSomething() {  
          // Leaves the function if nothing is passed           
if (!arguments[0]) {             
 return false;    
       }               
 var oArgs   = arguments[0]  
 arg0    = oArgs.arg0 || "",               
arg1    = oArgs.arg1 || "",               
arg2    = oArgs.arg2 || 0,               
arg3    = oArgs.arg3 || [],               
arg4    = oArgs.arg4 || false;      
}           
 doSomething({          
 arg1    : "foo",           
arg2    : 5,           
arg4    : false      });  
这只是一个把对象作为参数传递的一个很简单的例子,例如,我们还可以声明一个对象,变量名作为Key,默认值作为Value。

 

原创粉丝点击