JavaScript的语句

本文详细介绍了JavaScript中for/in循环的使用方法及其特点,包括如何遍历对象属性、复制属性名到数组等;同时讲解了var声明变量的注意事项以及function定义函数的细节。

如果你是C、C++或者Java程序员,那么你一定会发现JavaScript的语句十分面熟。所以这里只讨论JavaScript的比较特别的语句,那些常见语句就省略了。

① for/in语句

for/in语句是个有点特别的循环语句,它的语法如下:

for(variable in object)

statement

variable应该是一个变量名,声明一个变量的var语句,数组的一个元素或者是对象的一个属性。object是一个对象名,或者是计算结果为对象的表达式。statement通常是一个原始语句或者语句块,它构成了循环的主体。

for/in循环提供了一种遍历对象属性的方法。for/in循环的主体对object的每个属性执行一次。在循环体执行之前,对象的一个属性名会被作为字符串赋给变量variable。在循环体内部,可以使用这个变量和“[ ]”运算符来查询该对象属性的值。例如下面的for/in循环将输出一个对象的所有属性名及它的值:

for(var prop in my_object){
document.write("name:"+prop+"; value:"+my_object[prop],"<br>");
}
可以采用下面的代码把一个对象的所有属性名复制到一个数组中:

var o={x:1,y:2,z:3};
var a=new Array();
var i=0;
for(a[i++] in o)/*empty loop body*/;
JavaScript的数组不过是一种特殊的对象。因此for/in循环像枚举对象属性一样枚举数组下标。例如在前面的代码块后面加上下面这行代码可以枚举数组的属性0、1、2:

for(i in a) alert(i);
其实for/in循环并不会遍历对象的所有可能的属性。对象的有些属性以相同的方式标记成了只读的、不可删除的或者不可列举的。这些属性使用for/in循环不能枚举出来。虽然所有的用户定义属性都可以枚举,但是许多内部属性包括所有的内部方法都是不可枚举的。对象可以继承其他对象的属性,那些已继承的用户定义的属性可以使用for/in循环枚举出来。

② var语句

由var语句创建的一个特性或多个特性不能用delete运算符来删除。var语句还能作为for循环和for/in循环的一部分:

for(var i=0;i<10;i++) document.write(i,"<br>");
③ function语句

function语句定义了一个JavaScript函数。function语句的主体必须使用大括号,即使主体只有一条语句。从技术上说,function语句并非是一个语句。在JavaScript程序中,语句会引发动态的行为,但是函数定义描述的却是静态的程序结构。语句是在运行时执行的,而函数定义在解析时发生,并不是在运行时发生,这一事实产生了某些令人吃惊的作用。考虑下面的代码:

alert(f(4));   //16
var f=0;
function f(x){
return x*x;
}
alert(f);    //0
出现这种特殊的结果是由于函数定义和变量定义发生在不同时刻。幸运的是,这种情况并不常常发生。

基于可靠性评估序贯蒙特卡洛模拟法的配电网可靠性评估研究(Matlab代码实现)内容概要:本文围绕“基于可靠性评估序贯蒙特卡洛模拟法的配电网可靠性评估研究”,介绍了利用Matlab代码实现配电网可靠性的仿真分析方法。重点采用序贯蒙特卡洛模拟法对配电网进行长时间段的状态抽样与统计,通过模拟系统元件的故障与修复过程,评估配电网的关键可靠性指标,如系统停电频率、停电持续时间、负荷点可靠性等。该方法能够有效处理复杂网络结构与设备时序特性,提升评估精度,适用于含分布式电源、电动汽车等新型负荷接入的现代配电网。文中提供了完整的Matlab实现代码与案例分析,便于复现和扩展应用。; 适合人群:具备电力系统基础知识和Matlab编程能力的高校研究生、科研人员及电力行业技术人员,尤其适合从事配电网规划、运行与可靠性分析相关工作的人员; 使用场景及目标:①掌握序贯蒙特卡洛模拟法在电力系统可靠性评估中的基本原理与实现流程;②学习如何通过Matlab构建配电网仿真模型并进行状态转移模拟;③应用于含新能源接入的复杂配电网可靠性定量评估与优化设计; 阅读建议:建议结合文中提供的Matlab代码逐段调试运行,理解状态抽样、故障判断、修复逻辑及指标统计的具体实现方式,同时可扩展至不同网络结构或加入更多不确定性因素进行深化研究。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值