javascript day01

简介

A.诞生的背景
1995年网景公司开发的
开发目的:受制于当时的带宽,做表单验证
97年被提交给ECMA,98年获取ISO认证
B.功能
a.数据处理
b.用户交互
c.服务器端开发

javascript组成

1.ECMAScript
2.DOM
3.BOM

变量的创建与输出

//方法
用var关键字声明一个变量
用控制台输出:console.log();
用弹出框输出:alert();
//示例

*要用script标签包裹

数据的分类(原始类型)

原始类型分为:number,string,boolean,undefined,null
判断一个变量类型的使用:typeof
number为数值
如:
string为字符串
用单引号,或者双引号包裹的就叫string型
如:
boolean
boolean只有两种值true,false
如:
undefined
声明一个变量,没有赋予值就是undefined
如:

数据的分类(引用数据类型)

引用数据类型:array,object,function(函数)
array(数组):
1.如何声明一个数组
var arr=[1,2,3,4,5];
2.获取数组的长度
arr.length获取数组的长度
alert(arr.length);
3.如何读取数组里面的值
 alert(arr[0]);
获取数组里的值,数组的下标从0开始
4.向数组的末尾添加值
arr[arr.length]=value
5.如何判断一个变量是不是数组Array.isArray(变量)
alert(Array.isArray(arr))
object(对象)
对象:用程序表示生活中具体的实物
如:

    怎么读取对象的属性
    console.log(book.color)
function(函数)
函数是什么:封装特定功能的代码块
用function关键字定义一个函数
    function a(){
        console.log("hello world")
    }
如何调用函数:
函数名()
a();

声明提前

一个变量没有声明,直接输出就会报错
声明提前:程序执行之前,会将所有的变量,提前预读(当前作用域的顶部)集中创建
 

全局变量和局部变量

变量的作用范围分为全局和局部
在函数 "外部声明"的变量叫全局变量
在函数内部声明的变量叫局部变量

 在函数内部没有用"var"声明的变量,它默认是全局变量,但这个变量要在函数"调用之后使用"
    function a(){
        b = 10;
    }
    a();
    console.log(b);

运算的两种方式

1.算术运算+,-,*,/,%,++,--

var a= 10;
var c=20;
    var  d=--a;
    console.log(a);
    console.log(d);

    不单独运算的时候
    1.++在前,先自增,后赋值
    2.++在后,先赋值,后自增
2.关系运算
关系运算的结果会返回boolean值
var a=10;
    var b=20;
    console.log(a==b);
*运算中等号用==表示,=为赋值

数据类型的转换

number,string,boolean数据类型之间是可以相互转换的
1.强制转换
任意类型转为数值型
    Number(); 当是字符串的时候:只能识别数值的字符串,其他都是NaN
var a = true;
    var b="10";
    var c="hello world";
    console.log(Number(a));
    console.log(Number(b));
    console.log(Number(c)); 
c的运算结果为NAN
*NaN不能作计算,要计算,结果都为NaN;
将字符串转为数字
parseInt,将字符串转为整数
    var a="12px";
    var b=parseInt("12px");
 console.log(b);//12
parseFloat,将字符串转为小数
    var a="12.33333px";
    var b=parseFloat("12.33333px");
 console.log(b);//12.333333;
2.自动转换
算术运算为例,都会先转换为数字,在计算,不能转为数字的,为NaN
    var a=2;
    var b =true;
    var c = false;
    var d = "hello world";
    console.log(a-b);  //true 1
    console.log(a-c);  //false 0
    console.log(a-d);  //当不能转为数字NaN
    *加运算中,只要一边为字符串,结果就为字符串
    var a =10;
    var b="hello world";
    var c=a+b;
    var d ="20";
    console.log( a+d);

关系运算中的自动转换

在关系运算中,先两边的数据先转换为数值再比较
    var a =20;
    var d=true;
    var c="hello";
    console.log(20>d);
    console.log(a>c);

你可能感兴趣的:(javascript day01)