while
var num = 0
while (num<=6) //条件判断
{
document.write("取出第"+num+"个球<br />");
num=num+1; //条件值更新
}
do while //先做赋值,再做条件判断
var mynum =0;//mynum初值化数值为0
do
{
document.write('取出球'+mynum+"<br/>");
mynum=mynum+1;
}
while(mynum<=6)
for
for(var i =1;i<=6;i++){
document.write("取出第"+i+"个球<br />");
}
for ..in ...循环
for()中的格式:for( var i in zhangsan){
i // 输出键
zhangsan[i] // 输出 键的值
}
for..of...循环 (es6)
for()中的格式:for( var i of zhangsan){
i // 可以直接输出键的值
}
for..of..循环set和map结构
var engines = new Set(["Gecko", "Trident", "Webkit", "Webkit"]);
for (var e of engines) {
console.log(e);
}
// Gecko Trident Webkit
var es6 = new Map();
es6.set("edition", 6);
es6.set("committee", "TC39");
es6.set("standard", "ECMA-262");
for (var [name, value] of es6) {
console.log(name + ": " + value);
}
// edition: 6
// committee: TC39
// standard: ECMA-262
map() // 获取数组中特定的属性值
var users = [
{name: "张含韵", "email": "zhang@email.com"},
{name: "江一燕", "email": "jiang@email.com"},
{name: "李小璐", "email": "li@email.com"}
];
var emails = users.map(function (user) { return user.email; });
console.log(emails.join(", ")); // zhang@email.com, jiang@email.com, li@email.com
hasOwnProperty判断一个属性是不是对象自身上的属性。
function foo() {
this.name = 'foo'
this.sayHi = function () {
console.log('Say Hi')
}
}
foo.prototype.sayGoodBy = function () {
console.log('Say Good By')
}
let myPro = new foo()
console.log(myPro.hasOwnProperty('name')) // true
console.log(myPro.hasOwnProperty('toString')) // false
循环控制语句
break 直接跳出循环
continute 略过此循环并继续
for(初始条件;判断条件;循环后条件值更新)
{
if(num==5)
{ continue; //略过并继续循环,不输出5}
循环代码
}