JavaScript:基本语法

js语法严格区分大小写。

NaN这个特殊的Number与所有其他值都不相等,包括它自己。唯一能判断NaN的方法是通过isNaN()函数:

NaN === NaN; // false

字符串:

//ASCII字符可以以\x##形式的十六进制表示,例如: 
'\x41';             // 完全等同于 'A'

//还可以用\u####表示一个Unicode字符:
'\u4e2d\u6587';     // 完全等同于 '中文'

最新的ES6标准新增了一种多行字符串的表示方法,用`...`表示:

alert(`多行
字符串
测试`);

字符串是不可变的,如果对字符串的某个索引赋值,不会有任何错误,但是,也没有任何效果:

var s = 'Test';
s[0] = 'X'; // s仍然为'Test'

定义数组:

var arr = [1, 2, 3.14, 'Hello', null, true];
var arr = new Array(1, 2, 3); 

定义对象:

对象由若干键值对组成,键是字符串类型,值可以是任意类型

var person = { 
    name: 'Bob',
    age: 20,
    tags: ['js', 'web', 'mobile'],
    city: 'Beijing',
    zipcode: null
};

还可以给对象绑定一个函数,就可以做更多的事情:

var xiaoming = {
    name: '小明',
    birth: 2018,
    age: function () {
        var y = new Date().getFullYear();
        return y - this.birth;
    }
};

xiaoming.age;       // function xiaoming.age()
xiaoming.age();     // 今年调用是1,明年调用就变成2了

条件判断:

JavaScript把nullundefined0NaN和空字符串''视为false,其他值一概视为true。

if(true){
    alert('if');
}else if(true){
    alert('elseif');
}else{
    alert('else');
}    //输出if

循环:

for(var i=0; i<2; i++){
    alert(i);
}

var x = 0;
for (;;) {         // 将无限循环下去
    if (x > 100) {
        break;     // 通过if判断来退出循环
    }
    x ++;
}

//for...in遍历对象
var o = {
    name: 'Jack',
    age: 20,
    city: 'Beijing'
};
for (var key in o) {
    alert(key); // 'name', 'age', 'city'
    alert(o[key]); // 'Jack', 20, 'Beijing'
}

//由于Array也是对象,而它的每个元素的索引被视为对象的属性,因此,for ... in循环可以直接循环出Array的索引:
var a = ['A', 'B', 'C'];
for (var i in a) {
    alert(i); // '0', '1', '2'
    alert(a[i]); // 'A', 'B', 'C'
}
//请注意,for ... in对Array的循环得到的是String而不是Number。

var i=100;
while(i>0){
    i--;
}

var n = 0;
do {
    n++;
} while (n < 100);
posted @ 2019-01-09 17:03  xuejianbest  阅读(112)  评论(0编辑  收藏  举报