JavaScript--总结一(变量+数据类型+运算符)

JavaScript是什么?javascript

是一门脚本语言(不须要编译,直接执行)html

是一门解释性语言前端

是一门动态类型的语言java

是一门基于对象的语言浏览器

 JavaScript分为三个部分函数

1.ECMAScript  标准----js的基本语法spa

2.DOM---Document Object Model 文档对象模型(一套操做页面元素的API)code

DOM能够把HTML看做是文档树,经过DOM提供的API对树上的节点进行操做htm

3.BOM---Browser  Object  Model   浏览器对象模型(一套操做浏览器功能的API)对象

经过BOM操做浏览器窗口,好比(弹出框,控制浏览器跳转,获取分辨率等)

 

JavaScript和HTML、CSS的区别

一、HTML:提供网页的结构,提供网页中的内容

二、CSS:用来美化网页

三、JavaScript:能够用来控制网页内容,给网页增长动态的效果 

JavaScript的书写位置

1.写在行内

<input type="button" value="按钮" onclick="alert('Hello World')" />

2.写在script标签中

<head>
  <script>
    alert('Hello World!');
  </script>
</head>

3.写在外部js文件中,在页面引入

<script src="main.js"></script>

 js代码须要注意的问题

在一对javascript标签的代码中有错误的代码时,那么在错误代码后的js代码都不会执行

若是第一对Script中有错误的代码,不会影响后面的Script标签中的js代码执行

script的标签中能够写什么内容 type="text/javascript"是标准写法或者写language="JavaScript"均可以可是,目前在咱们的html页面中,type和language均可以省略,缘由:html是遵循h5的标准
 
若是script标签是引入外部js文件的做用,那么这对标签中不要写任何的js代码,若是要写,从新写一对script标签,里面写代码
 
变量
什么是变量?
变量是计算机内存中存储数据的标识符,根据变量名称能够获取内存中存储的数据
为何使用变量?
使用变量能够方便的获取或者修改内存中的数据
js中存储数据使用变量的方式(名字,值---数据)
js中声明变量都用var---存储数据,数据应该有对应的数据类型
js中的字符串类型的值都用双引号或者单引号
 
变量---做用,存储数据或者操做数据
变量声明(有var,有变量名字,没有值)
var age;
变量初始化(有var ,有变量名字,有值)
var age;
age = 18;

同时声明多个变量

var age, name, sex;
age = 10;
name = 'zs';

同时声明多个变量而且赋值

var age = 10, name = 'zs';

变量的命名规则和规范

规则--必须遵照的,不遵照会出现报错

由字母、数字、下划线、$符号组成,不能以数字开头

不能用关键字和保留字,例如for、while。

区分大小写

 

规范--建议遵照,不遵照不会报错

变量名必须有意义

遵照驼峰命名法,首字母小写,后面单词的首字母大写

 

数据类型

  • 字面量

在源代码中一个固定值的表示法

数值的字面量:8,9,0

字符串字面量:“前端”,“小田”

布尔字面量:true,false

  •   js中简单数据类型
Number:  数值字面量,数值的固定值的表示法,数字类型(整数和小数)
数值判断:
NaN: not a number
NaN与和任何值都不相等,包括它自己
is NaN: is not a number
 
注意:
不要用小数验证小数
不要使用NaN判断是否是NaN,应该使用is NaN
var num;
   console.log(num+10==NaN);//---false
num+10不是一个数字 NaN 俩个不是数字的值没法判断相等

如何验证这个结果是否是NaN,应该使用isNaN()//
使用isNaN()验证是一个数字时,结果为false
使用isNaN()验证不是一个数字时,结果为true
须要表示十进制:正常数字
须要表示八进制:以0开头
须要表示十六进制:0x开头
String: 字符串类型(值通常都是单引号或者双引号括起来的)
转义符:
字符串的长度:使用length属性能够获取字符串的长度
字符串的拼接:使用+链接
俩边只要有一个是字符串,那么+就是字符串拼接功能
俩边若是都是数据,那么就是算数功能
Boolean: 布尔类型(值只有俩个,true(真1),false(假0))
Undefined: 未定义,值只有一个:undefined
什么状况下结果为undefined?
变量声明了,没有赋值
函数没有明确返回值,若是接受了,结果是undefined
若是一个变量的结果是undefined和一个数字进行计算,结果:NaN,不是一个数字,也没有意义
Null: 空类型,值只有一个:null,一个对象指向为空,此时能够赋值为null(变量的值若是想为null,必须手动设置)
  • 复杂数据类型
Object: 对象
 
如何获取变量的数据类型?
typeof  变量名
typeof(变量名)
var age = 18;
console.log(typeof age);  // 'number'
console.log(typeof(age));

 数据类型转化

如何使用谷歌浏览器,快速的查看数据类型?

字符串的颜色是黑色的,数值类型是蓝色的,布尔类型也是蓝色的,undefined和null是灰色的

  • 其余类型转字符串类型

.toString();

var num = 5;
console.log(num.toString());

String();

若是变量是有意义--调用.toString()使用转换

若是变量没有意义--使用String()转化

   var num2;//值为undefined,无心义
   console.log(num2.toString());
   var num3=null;
   console.log(num3.toString());//以上会报错

    这个能够
   var num2;
   console.log(String(num2));
   var num3=null;
   console.log(String(num3));
  • 其余类型转数值类型

Number();转数字

Number()能够把任何值转化成数值,若是要转换的字符串中有一个不是数值的字符,返回NaN

parseInt();转整数

var num1 = parseInt("12.3abc");  // 返回12,若是第一个字符是数字会解析知道遇到非数字结束
var num2 = parseInt("abc123");   // 返回NaN,若是第一个字符不是数字或者符号就返回NaN

parse Float();转小数

parseFloat()把字符串转换成浮点数
parseFloat()和parseInt很是类似,不一样之处在与
parseFloat会解析第一个. 遇到第二个.或者非数字结束
若是解析的内容里只有整数,解析成整数

+,-0等运算

 var str = '500';
console.log(+str); // 取正
console.log(-str); // 取负
console.log(str - 0);

  • 其余类型转化为布尔类型

Boolean()

0 ''(空字符串) null undefined NaN 会转换成false 其它都会转换成true

 

操做符

一些符号---用来计算

算数运算符:+ - * / %

算数运算符表达式:由算数运算符链接起来的表达式

  • 一元运算符 ++ --

只有一个操做数的运算符 ++ --

++ 自身加一

-- 自身减一

总结 前置++:先加1,后参与运算

后置++:先参与运算,后加1

上面两个理解后,下面两个自通

前置-- :先减1,后参与运算

后置-- :先参与运算,后减1

说明:var  num=1; ++num以后num的值为2,++num的值2

         num++以后的num值为2,num++的值为1

  • 二元运算符: 
这个操做符须要两个操做数就能够运算
  • 三元运算符:

表达式1 ? 表达式2 : 表达式3
是对if……else语句的一种简化写法

  • 复合运算符: +=  -=  *= /= %=

复合运算表达式:由复合运算符链接起来的表达式

 关系运算符:>  <  >=  <= ==不严格的 ===严格  !=不严格的不等,!==严格的不等

关系运算表达式:由关系运算符链接起来的表达式

关系运算表达式的结果是布尔类型

逻辑运算符:

&&:与  俩个操做数同时为true,结果为true,不然都是false

||  : 或  俩个操做数有一个为true,结果为true,不然为false

 !:  非  取反

 赋值运算符

=  +=  -=  *=  /+  %=

例如:
var num = 0;
num += 5;    //至关于  num = num + 5;
运算符的优先级

优先级从高到底 1. () 优先级最高 2. 一元运算符 ++ -- ! 3. 算数运算符 先* / % 后 + - 4. 关系运算符 > >= < <= 5. 相等运算符 == != === !== 6. 逻辑运算符 先&& 后|| 7. 赋值运算符

相关文章
相关标签/搜索