JavaScript语法规则:
(1)每一条JavaScript语句都是一条发送给浏览器的指令
(2)JavaScript区分大小写
(3)所有特殊符号均为英文半角
(4)代码对空格、换行、缩进不敏感
1 直接量
直接量:又叫字面量,能够直接使用的内容,常见有的数值、字符串。
(1)数值:1,2,3,1.1,2.2,1.1,-1等
(2)字符串:程序中被单双引号包裹起来的的内容,都是字符串"hello wold" 'hello' "你好" '我好'...
(3)其它字面量:true false null 正则表达式
更多说明:alert("hello wolrd");//弹出警告框,内容为字符串字面量
alert(hi);alert(123);alert(true);
2 变量
变量:变化的量,将数据保存在内存中,存储数据。
(1)变量声明 var a;
var为变量声明的关键字,a为变量;
(2)变量命名规则
区分大小写;变量名必须以字母、下划线或者$开头;变量的组成可以由字母、下划线、$或数字;不能使用关键字和保留字
(3)变量的赋值
var a = 10;变量名=值;
(4)取出变量的值:使用变量名
(5)变量允许重复赋值
更多说明:
var a;//定义一个变量,并且命名为a
var A;
var $a;
var _a;
a=10; //将10赋值给变量a
alert(a);
alert(123);//数值123
alert('123');//字符串123
var a='hello';
console.log(a);//在控制台输出
console.log('world');
var a=10;//在内存中开辟空间,并且命名为a,然后将数据10存入开辟的空间中
console.log(a);
alert(a);
a=30;//变量的重复赋值
console.log(a);//就近原则
var a=10;
var b=20;
console.log(a,b);
var c=a;//将a变量的值赋值给变量c 变量值的传递
console.log(c);//c为10
a=30;
console.log(a,c);//变量a和c是独立的空间,a为30,c为10
c='hello';
console.log(c);//c为hello
3 数据类型
JavaScript是一门弱类型语言,在声明变量时,是没有数据类型的,一旦赋值之后,变量便有了数据类型。
(1)数值类型 number : 1,2,3,1.1,1.1111,-1 等
(2)字符串类型 string :被单双引号所包裹的内容 "" '' 例如:'hello' 'world' '12' '1.2'
注意:字符串类型会原样输出 "3+5" "^&(*(^*&^*(&(*%^*&&(&"
(3)布尔类型 boolean :true(真) false(假)
(4)其它数据类型:
undefined (未定义) 当一个变量只声明未赋值时,类型未undefined
null (空)
Object(对象类型、引用类型)
(5)判断变量的数据类型typeof
注意:类型检测的结果本身又是字符串类型
console.log(typeof typeof a ) ; //值为:string
(6)基本数据类型(原始数据类型):number boolean string undefined null
(7)引用类型:Object Function RegExp Array Date........
更多说明:
var a=10;//声明数值类型
var b='hello';//声明字符串类型
var c=typeof a;//"number"
var d=typeof b;//"string"
console.log(typeof c);//输出了一个表达式,本质为输出这个表达式的运算结果//string
console.log(typeof typeof a);//string
console.log(typeof typeof b);//string
var a=true;//声明一个布尔类型
var b=false;
console.log(typeof a);//boolean
console.log(typeof b);//boolean
var a;
console.log(a);//未定义 输出值为undefined
console.log(typeof a);//变量只声明,未赋值 输出值为undefined
//1.未定义,直接输出 值为error
console.log(a);//error
//2. 变量只定义,未赋值 值为undefined
var a;
console.log(a);//值为undefined
console.log(b);
var b;//值为undefined
//3. 变量未定义,直接赋值,可以使用
a=20;
console.log(a);//值为20
//4.变量提升机制
a=10;
var a;
console.log(a);//值为10
//等同于如下代码 不推荐使用上述做法
var a;
a=10;
console.log(a);
5.var c=null;//空 什么都没有
console.log(typeof c);//引用类型 "object"
console.log(typeof typeof c);//值为string
var a=123;
console.log(typeof a);//值为number
console.log(typeof 123);//值为number
6.var a=NaN;// not a number
console.log(typeof a);//值为number
7.赋值语句遵循顺序结构
console.log(a);//undefined
var a=20;
console.log(a);
//以上代码等同于
var a;
console.log(a);
a=20;
8.声明多个变量,多个变量之间用逗号隔开
var a,b,c;
a=10;
b=20;
c=30;
console.log(a,b,c);
var a1=10,a2=20,a3=50;
console.log(a1,a2,a3);
var b1,b2=10,b3;
console.log(b1,b2,b3);
4 运算符
1.运算符根据运算符两边操作数的不同,分为:一元运算符、二元运算符、三元运算符
2.按照功能不同分为:
(1)算术运算符:+(加法运算) -(减法运算) *(乘法运算) /(除法运算)%(取余运算)
一元运算符:++自增运算符 --自减运算符
运算符后置和前置:不出现赋值时,执行自增自减运算;出现赋值时,先赋值,后运算
注意:若+运算符两边的操作数只要有一个为字符串,则执行拼接操作
(2)赋值运算符:= += -= *= /= %=
(3)关系运算符(比较运算符):> < == >= <= != ===(真等于,全等) !==
关系运算符的运算结果为布尔类型true、false
注意:==只比较数值是否相等 ===不仅比较数值是否想等,还比较数据类型
(4)逻辑运算符:逻辑运算符的运算结果为布尔类型 true false
|| (逻辑或):当两边的表达式运算结果有一个为真(true),则结果即为真(true),两边均为假(false),则为假
&&(逻辑与):仅当运算符两边的表达式结果均为真(true),则运算结果才为真(true)
!(非):取反
更多说明:
var a=10;
var b=20;
var c=a+b;
console.log(c);
console.log(a+b);
console.log(a*b);
console.log(a/b);//0.5
console.log(a-b);
console.log(a%b);//余数
var a=0.1;
var b=0.2;
console.log(a+b);//0.3000...000004
为什么操作小数会出现误差?
浮点数值的最高进度是17位小数,但在进行运算的时候其精确度却远远不如整数;整数在进行运算的时候都会转成10进制; 而Java和JavaScript中计算小数运算时,都会先将十进制的小数换算到对应的二进制,一部分小数并不能完整的换算为二进制,这里就出现了第一次的误差。待小数都换算为二进制后,再进行二进制间的运算,得到二进制结果。然后再将二进制结果换算为十进制,这里通常会出现第二次的误差。
浮点数值的最高进度是17位小数,但在进行运算的时候其精确度却远远不如整数;整数在进行运算的时候都会转成10进制; 而Java和JavaScript中计算小数运算时,都会先将十进制的小数换算到对应的二进制,一部分小数并不能完整的换算为二进制,这里就出现了第一次的误差。待小数都换算为二进制后,再进行二进制间的运算,得到二进制结果。然后再将二进制结果换算为十进制,这里通常会出现第二次的误差。所以(0.1+0.2)!=03
var a='hello';
var b='world';
console.log(a+b);//字符串拼接
console.log('5'+3);//53
console.log(5+5+'3');//103 string
console.log('5'+5+3);// '55'+3
---------------------
【转载,仅作分享,侵删】
作者:Ryan Ji
原文:https://blog.csdn.net/qq_42451979/article/details/80831769
版权声明:本文为博主原创文章,转载请附上博文链接!
|
|