`

JS 小技巧

阅读更多

1,在一个数组的最后添加一个元素

这个技巧可以让你使用Length属性在一个数组的最后添加一个元素,因为Length属性比数组的最后一个元素的下标多1。这个方法和“push”方法是相同的。例如:

  1.  
  2. var myArray = [];  
  3. myArray[myArray.length] = 'New Element';  
  4.  

2,调整一个数组的长度

Length属性不是只读的,所以你可以设置Length属性的值。而且,你可以使用它增大或缩小数组的长度。例如:

  1.  
  2. var myArray = [1,2,3];  
  3. myArray.length // 3  
  4. myArray.length = 2; //Delete the last element  
  5. myArray.length = 20 // add 18 elements to the array; the elements have the undefined value. 

 

 

3,使用“!!”把任意数据类型转换成Boolean

这个技术可以让你使用“!!”把任意数据类型(比如string, number或integer)转换成Boolean。例如:

  1. var myString = '23255';  
  2. typeof myString; //String  
  3.    
  4. myString = !!myString;  
  5. typeof myString  //Boolean 

4,把Number转换成String

这个技巧可以让你在number的结尾添加一个空的string来把number转换成string,例如:

  1. var mynumber = 234;  
  2. typeof mynumber; //Number  
  3.    
  4. mynumber += '';  
  5. typeof mynumber; //String 

5,了解一个函数需要多少个变量

这是一个伟大的技巧,可以让你准确地知道一个函数需要多少个变量。例如:

  1. function add_nums(num1, num2){  
  2.     return num1 + num2;  
  3. }  
  4. add_nums.length // 2 is the amount of parameters expected by the function add_nums 

6,使用“arguments”对象来了解一个函数接收到了多少个参数

这个技术可以让你使用“arguments”对象来了解一个函数接收到了多少个参数。例如:

  1. function add_nums(){  
  2.     return arguments.length;  
  3. }  
  4.    
  5. add_nums(23,11,32,56,89,89,89,44,6); //this return the number 9 

当你需要检查参数个数的有效性的时候,或者当你需要创建一个不确定参数个数的函数的时候,这个技巧是很有用的。

  1. function sum_three_nums( ){  
  2.  if(arguments.length!=3) throw new Error('received ' + arguments.length + ' parameters and should work with 3');  
  3.    
  4. }  
  5.    
  6. sum_three_nums(23,43); //Return the error message  
  7.    
  8. function sum_num(){  
  9.     var total = 0;  
  10.     for(var i=0;i<arguments .length;i++){  
  11.         total+=arguments[i];  
  12.     }  
  13.     return total;  
  14. }  
  15.    
  16. sum_num(2,34,45,56,56); 

7,把对象当成参数,来组织和改善函数

在现代Web开发中,对象最普遍的一个用途是把它们当成函数的参数。要记住函数参数的这个规则总是很困难的;但是,使用一个对象是十分有好处的,因为我们不必再担心参数的规则了。而且,它更有组织性,可以让用户更好的理解我们要做什么。这个方法可以让你把对象当成参数,来组织和改善函数。例如:

  1. function insertData(name,lastName,phone,address){  
  2.     code here;  

重构以后的代码是这样的:

  1. function insertData(parameters){  
  2.     var name = parameters.name;  
  3.     var lastName = parameters.lastName;  
  4.     var phone = parameters.phone;  
  5.     var address = parameters.address;  

当你要使用默认值的时候,它也是十分有用的。例如:

  1. function insertData(parameters){  
  2.     var name = parameters.name;  
  3.     var lastName = parameters.lastName;  
  4.     var phone = parameters.phone;  
  5.     var address = parameters.address;  
  6.     var status = parameters.status || 'single' //If status is not defined as a property  //in the object the variable status take single as value  

现在,要使用这个函数十分的简单;我们可以用两种方式来发送数据:

  1. //Example 1  
  2. insertData({name:’Mike’, lastName:’Rogers’, phone:’555-555-5555’,address:’the address’, status:’married’});  
  3.    
  4.    
  5. //Example 2  
  6. var myData = {       name:’Mike’,   
  7.                          lastName:’Rogers’,   
  8.                                phone:’555-555-5555’,  
  9.                              address:’the address’,   
  10.                                 status:’married’  
  11.                        };  
  12.    
  13. insertData(myData); 

8,函数就是数据

函数就是像strings或numbers那样的数据,我们可以把它们当成函数参数来传递它们,这可以创建十分令人惊讶而又“威风凛凛”的Web应用程序。这个方法是非常有用的,几乎所有的主流框架都使用了这个方法。例如:

  1. function byId(element, event, f){  
  2.     Document.getElementById(element).['on'+event] = f; //f is the function that we pass as parameter  
  3. }  
  4.    
  5. byId('myBtn','click',function(){alert('Hello World')});  
  6.    
  7. Another example of functions as data:  
  8.    
  9. //Example 1  
  10. function msg(m){  
  11.     Alert(m);  
  12. }  
  13.    
  14. //Example 2  
  15. var msg = function(m){ alert(m);}  

这些函数几乎是完全相同的。唯一的区别是使用它们的方式。例如:第一个函数,在你声明它以前,你就可以使用它了;但是第二个函数只有声明以后才能使用:

  1. //Example 1  
  2. msg('Hello world'); //This will work  
  3.    
  4. function msg(m){  
  5.     alert(m);  
  6. }  
  7.    
  8. //Example 2  
  9. msg('Hello world'); //Does not work because JavaScript cannot find the function msg because is used before is been declared.  
  10.    
  11. var msg = function(m){ alert(m)} 

9,扩展本地对象

虽然一些JavaScript的领袖不推荐这个技术,但是它已经被一些框架使用了。它可以让你针对JavaScript API来创建一些辅助性的方法。

  1. //We create the method prototype for our arrays  
  2. //It only sums numeric elements  
  3.    
  4. Array.prototype.sum = function(){  
  5.     var len = this.length;  
  6.     total = 0;  
  7.     for(var i=0;i<len ;i++){  
  8.         if(typeof this[i]!= 'number'continue;  
  9.          total += this[i];  
  10.     }  
  11.     return total;  
  12. }  
  13.    
  14. var myArray = [1,2,3,'hola'];  
  15. myArray.sum();  
  16.    
  17.    
  18.    
  19.    
  20. Array.prototype.max = function(){  
  21.     return Math.max.apply('',this);  
  22. }  
  23.   

10,Boolean

注意它们之间的区别,因为这会节省你调试脚本的时间。

  1. '' == '0'          // false  
  2. 0 == ''            // true  
  3. 0 == '0'           // true  
  4. false == 'false'   // false  
  5. false == '0'       // true  
  6. false == undefined // false  
  7. false == null      // false  
  8. null == undefined  // true  
  9. true == 1          // true  
  10. '' == null         // false  
  11. false == ''        // true 
分享到:
评论

相关推荐

    javascript小技巧-js小技巧收集.doc

    这些JavaScript小技巧涵盖了基础语法、数据操作、DOM操作、用户交互等多个方面,对于理解和编写JavaScript代码非常有帮助。学习和熟练运用这些技巧,可以提高开发效率,编写出更高效、更健壮的JavaScript代码。

    JavaScript小技巧全集

    这篇“JavaScript小技巧全集”涵盖了各种实用的编程技巧,旨在帮助开发者提升效率,编写出更简洁、更高效的代码。以下是一些重要的JavaScript知识点,基于描述中的提示: 1. **变量声明与作用域**: - `let`、`...

    javaScript小技巧。

    根据提供的文件内容,我们可以总结出以下几个JavaScript小技巧及相关知识点: ### 1. 引入外部JavaScript文件 在HTML文档中,可以通过`&lt;script&gt;`标签引入外部JavaScript文件来执行脚本代码。例如: ```html ...

    Javascript小技巧之生成html元素.docx

    7. **JavaScript编程的10个有用小技巧**和**12个特别有用的JavaScript小技巧【推举】**:这两篇文章分别分享了10个和12个实用的JavaScript编程技巧,是进阶学习的好资源。 总的来说,掌握生成HTML元素的技巧对...

    200多个js小技巧

    以上这些JavaScript小技巧都是为了增强网页的互动性和用户体验。熟练掌握并灵活运用它们,能让你的网页更加生动有趣。在实际开发中,还可以结合其他前端框架如React、Vue等,将这些技巧与现代Web技术相结合,创建更...

    1000个javascript小技巧

    这本名为"1000个JavaScript小技巧"的资源集锦涵盖了各种实用的编程技巧,旨在帮助开发者提升效率,解决实际问题。以下是一些关键的知识点,将从这1000个小技巧中提炼出来: 1. **变量声明与作用域**:了解`var`、`...

    Javascript小技巧一箩筐

    ### JavaScript小技巧精粹 在Web开发领域,JavaScript作为一门不可或缺的编程语言,其灵活性与功能强大性使得它成为前端开发中的核心技能。本文将基于“JavaScript小技巧一箩筐”这一主题,深入探讨一系列实用的...

    JavaScript小技巧全集 JavaScript教程 JavaScript源代码集

    这个“JavaScript小技巧全集”提供了丰富的教程和源代码,旨在帮助开发者深入理解和掌握JavaScript的各种实用技巧。 首先,我们来看看JavaScript的基本语法。JavaScript是一种弱类型、解释型的语言,它的变量声明不...

    Java js小技巧

    本文将深入探讨“Java js小技巧”这一主题,分享一些实用的编程技巧,帮助开发者提升效率和代码质量。 首先,我们来看Java。Java是一种强类型、面向对象的编程语言,被广泛用于企业级应用开发、Android移动应用以及...

    javascript小技巧

    这个"javascript小技巧"的压缩包显然包含了诸多实用的JavaScript技术与窍门,旨在帮助初学者快速上手,同时也为有经验的开发者提供进一步提升技能的资源。以下是基于标题、描述和文件名推测出的一些JavaScript知识点...

    JavaScript小技巧整理篇(非常全).pdf

    ### JavaScript小技巧整理篇知识点详述 #### 一、引言 本文档旨在总结一系列JavaScript编程中的实用技巧,涵盖从基本操作到高级功能的应用。这些技巧不仅有助于提升开发效率,还能帮助开发者更好地理解和掌握...

    40种javascript小技巧

    ### JavaScript小技巧详解 #### 技巧1:屏蔽鼠标右键 通过在HTML元素上设置`oncontextmenu="window.event.returnValue=false"`属性,可以禁止用户在该元素上使用鼠标右键。例如: ```html ;"&gt; 无法右击此表格 ```...

    javascript小技巧全集

    这个"JavaScript小技巧全集"涵盖了各种实用的编程技巧,旨在帮助开发者提升效率,编写出更优雅、性能更好的代码。无论您是在Windows、MacOS还是Linux等任何操作系统上工作,这些技巧都是通用的。 一、函数与闭包 1....

    常用的一些javascript小技巧

    ### 常用的一些JavaScript小技巧详解 在前端开发领域,JavaScript是不可或缺的编程语言,其灵活多变的特性使得开发者能够实现丰富的交互效果。本文将深入探讨一系列实用的JavaScript小技巧,帮助开发者提高编码效率...

    JavaScript小技巧

    ### JavaScript小技巧详解 在日常开发过程中,JavaScript作为前端开发的核心语言之一,其灵活多变的特性让开发者能够实现各种复杂的功能。对于新手乃至中级开发者而言,掌握一些实用的小技巧可以极大提高编码效率与...

    javascript小技巧合集

    标题:javascript小技巧合集 描述:本文将详细介绍一系列实用的JavaScript技巧,这些技巧涵盖了从基本的用户交互到更复杂的页面控制,旨在帮助开发者优化用户体验,增强网站安全性,并提升开发效率。 ### 重要技巧...

    javascript小技巧归纳

    根据提供的文件信息,我们...以上列举的各项JavaScript小技巧涵盖了从基本的用户交互到更高级的功能实现,对于提高网站的用户体验及安全性都有着重要作用。开发者可以根据实际需求灵活运用这些技巧来优化自己的项目。

Global site tag (gtag.js) - Google Analytics