改善Java Script程序的建议(二)

简介: 改善Java Script程序的建议(二)

1、数组长度的有限性和无限性

    var myArray = [];

    myArray.lenght;     // 0

    myArray[10000] = true;

    myArray.length        // 10001

    根据 ECMAScript 标准,数组的下标必须是大于或等于0且小于2^32 -1 的证书。

    我们可以指定数组的长度,这将导致所有下标大于或等于新 length 的元素被删除。


     

2、建议使用 splice 删除数组

    由于数组其实就是对象,因此使用 delete 运算符可以从数组中移除元素。但是移除下标位置元素后,会在数组中遗留一个空洞。

    例如:

         

    splice 删除元素,如下

         

3、使用 arguments 模拟重载

     

4、建议使用闭包跨域开发

     

演示步骤说明:

第一步,程序预编译之后,从第9行开始解析执行,创建上下文环境,创建调用对象,把参数、局部变量、内部的函数转换为对象的属性。

第二步,执行函数体内代码。在第6行执行局部变量 a 的递加运算,并把这个值传递给对象属性a, 内部函数动态保持与局部变量 a 的联系,同时更新自己内部调用变量的值。

第3步,外部函数把内部函数返回给全局变量c,实现内部函数的定义,此时 c 完全继承了内部函数的所有结构和数据。

第4步,外部函数返回后(即返回之后调用完毕)会自动销毁,内部的结构、标识符和数据也随之丢失。

第5步,执行第10行代码命令,调用内部函数,此时返回的是外部函数返回时(销毁之前)保存的变量a 所存储的最新数据值,即返回6。


function f(){

    var a = 1;

    b = function(){

         alert(a);

    }

    c = function(){

         a++;

    }

    d = function( x ){

         a = x;

    }

}

f();

b();            // alert(1);

c();b();        // alert(2);

d(100);b();     // alert(100);  

   

5、在循环体和异步回调中慎重使用闭包

6、通过 Function 扩展类型

   

7、原型属性和本地特性之间的关系

     

8、合理使用原型

本地属性覆盖原型属性

  function p(x){

       this.x = x;  

    }

  p.prototype.x = 1;

  var p1 = new p(10);

  alert(p1.x);            // 本地属性覆盖原型属性

  但是原型属性并没有被删除,它依然存在,仅是被覆盖

相关文章
|
7天前
|
XML 存储 JSON
Java程序部署
Java程序部署
|
2月前
|
JavaScript Java Serverless
函数计算产品使用问题之如何使用Node.js编写程序
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
8天前
|
消息中间件 分布式计算 Java
Linux环境下 java程序提交spark任务到Yarn报错
Linux环境下 java程序提交spark任务到Yarn报错
18 5
|
9天前
|
Java 编译器 数据库连接
探索Java中的异常处理:提升程序的鲁棒性
【9月更文挑战第25天】在Java的世界里,异常是那些不请自来、令人头疼的“客人”。它们悄无声息地潜入我们的代码,一旦出现,便可能导致程序崩溃或行为异常。但是,如果能够妥善管理这些异常,我们就能将潜在的灾难转变为增强程序鲁棒性和用户体验的机会。本文将通过深入浅出的方式,带领读者理解Java异常处理的重要性,并提供实用的策略来优雅地处理这些意外情况。让我们一起学习如何在Java中捕捉、处理和预防异常,确保我们的程序即使在面对不可预见的错误时也能保持稳健运行。
|
15天前
|
监控 Java 数据库
Java程序如何进行不停机更新?
Java程序如何进行不停机更新?
17 1
|
1月前
|
缓存 监控 安全
如何提高 Java 高并发程序的性能?
以下是提升Java高并发程序性能的方法:优化线程池设置,减少锁竞争,使用读写锁和无锁数据结构。利用缓存减少重复计算和数据库查询,并优化数据库操作,采用连接池和分库分表策略。应用异步处理,选择合适的数据结构如`ConcurrentHashMap`。复用对象和资源,使用工具监控性能并定期审查代码,遵循良好编程规范。
|
2月前
|
数据采集 人工智能 监控
【Azure 应用程序见解】Application Insights Java Agent 3.1.0的使用实验,通过修改单个URL的采样率来减少请求及依赖项的数据采集
【Azure 应用程序见解】Application Insights Java Agent 3.1.0的使用实验,通过修改单个URL的采样率来减少请求及依赖项的数据采集
|
2月前
|
Java jenkins Shell
还有人不会启动JAVA程序
还有人不会启动JAVA程序
17 0
|
2月前
|
Java 调度
|
2月前
|
监控 Java API
如何从 Java 程序中查找内存使用情况
【8月更文挑战第22天】
22 0
下一篇
无影云桌面