我爱编程

JS-变量和运算操作符

2018-05-25  本文已影响0人  ThiagoChang

1. 命名

  1. 变量必须以英文字母、_ 或者&开头
  2. 变量可以包括英文字母、数字、$、_
  3. 不可以用系统的关键字(如var)、保留字

2. 值类型——数据类型

  1. 原始值(存入stack,栈)(栈:first in, last out)
    Number:var = 1;
    Boolean: var c = false; var d = true;
    String: var b = 'abc'; (双引或单引)
    Undefined: var e = undefined; (如果没有给e赋值,打印e就会显示undefined)
    Null:f = null; (占位值,空值)
  2. 引用值(存入heap,堆)
    array: var arr = [1, 2, 3, false, 'abc']
    object
    function
    date
    RegExp

3.错误

1.低级错误(句法错误,会导致程序完全不可执行)

 var a = 10;
 document.write(a) :
 var b = 20;
 document.write(b);

2.逻辑错误(标准错误,情有可原)

 var a = 10;
 document.write(a);
 document.write(b);
 document.write('20');

执行到第三行代码,程序会出错,不会再继续进行第四行

一个script代码块里的错误不会影响另外一个script代码块的执行

4. 运算操作符

  1. '+'
    *可用于数学运算、字符串连接
    *任何类型的数据+字符串都会等于一个字符串
  2. '%'取模(取除法后的余数)
  3. '++'
 var a = 10;
 a = a + 1;

相当于:

 var a = 10;
 a++;       

a++给原来a变量加1,在赋值给a

'--'和 '++'同理;
'++'若放在变量前面,则先执行'++'运算(先用++给变量赋新值,再执行本行语句);若放到变量后面,则后执行'++'运算(先不改变变量的值,而是先执行本行,再赋新值给变量,再执行下一句)

 var a = 10;
 document.write(a++);
 document.write(a);

输出为:
1011
(会先打印a,再重新给a赋值;之后第三行在打印a的新值)

 var a = 10;
 document.write(++a);
 document.write(a);

输出为:
1111

eg.:

 var a = 10;
 var b = ++a - 1 + a++;
 document.write(b + " " + a)

输出为:
21 12
工作原理:
第一行:++a将a变为11,之后的‘a++’中的a已经变为11;
第二行:再进行之后的‘++’运算,‘a++’变为12;

赋值的顺序自右向左;计算的顺序自左向右。

  1. +=符号
 var a = 10;
 a = a + 10;

相当于

 var a = 10;
 a += 10;

同理:

 var a = 10;
 a += 10 + 1;

相当于

 var a = 10;
 a = a + 10 + 1;

相似的有+=, -=, *=, /=, %=

a = 1;
a %= 10; 这一行的意思是把a%10的值赋值给a

上一篇下一篇

猜你喜欢

热点阅读