JavaScript基础

JavaScript概述
客户端脚本语言
脚本语言:不需要编译,直接执行(由上到下)
作用:让HTML具有动态交互效果。
JavaScript = ECMAScript(标准/规则)+JavaScript(BOM/DOM)
JavaScript的使用
JavaScript中的注释:没有注释的代码是没有灵魂的。

  • 单行注释: //内容
  • 多行注释:/* 内容*/
    JavaScript中的数据类型
    基本数据类型(原始数据类型) 5种
  • number: 包含整数、小数 、Nan(不是数字的一种数字)
  • string:字符串。JavaScript中没有字符的概念 'a’也是字符串。
  • boolean:true/false.
  • null:占位为空的对象.
  • undefined:变量定义了,但是没有初始化。
    JavaScript变量的定义
    Java是强类型语言,JavaScript是弱类型语言.
  • 强类型语言在内存中开辟空间存储数据的时候,就规定了这片空间只可以存储什么样的数据,即使更改,数据类型也无法变换.
  • 弱类型语言在内存中开辟空间存储数据的时候,没有规定这片空间只可以存储什么样的数据,即使更改,数据类型也随之变换.
    变量定义方式:
  • var 变量名 = 初始化值;
  • var 变量名;
    如何判断变量是什么数据类型?
  • 通过一个方法进行判断 -> typeof
  • typeof(要判断的数据);
  • typeof 要判断的数据
  • typeof null 类型会显示Object,这是原始JavaScript的错误,被ECMAScript沿用了.
    一元运算符
    ++/–
    如果++/–在前,先自增/自减再进行运算.
    如果++/–在后,先进行运算再进行自增/自减.
    +(-)
    转换可以将不是number的数据类型转换为number类.
    string
  • 如果string的字面值是数字,直接转换为数字,如果string的字面值不是数字,则转换为NaN.
    boolean
  • true为1,false为0
    比较运算符
    类型相同:
  • 字典比较 -> 比较字符串 -> 按照字典顺序进行比较(a<b<c<d<e) 从第一位开始逐一向后比较,直到有一个对应的元素不相同比较出结果未知.
    类型不同
  • 会先进行类型转换 -> 再进行比较.
    (===)全等比较 -> 要进行类型转换,类型不同全等比较都是false.
  • 1.判断两个比较的数据的数据类型是否相同,如果说数据类型不相同,则直接返回false.
  • 2.如果数据类型相同再进行比较.
    逻辑运算符
    && || !
    && -> 有false则false.
    || -> 有true则true.
    ! 其他类型转换为boolean
    number -> 根据number的数值来转 0/NaN 为false 其他的为true.
    string -> 空字符串""为false,其他的为true.
    null/u -> 都是false.
    引用数据类型 -> 都是true.
/方便判断以后对象是否在NULL,在JavaScript中判断.
if(对象名称){
    //可以直接判断对象是否为NULL,因为会将对象转换为boolean,将转换后的boolean类型作为if判断的参数.
}

三元运算符
表达式?值1:值2; //表达式为true则为值1,表达式为false则为值2;

Js中的特殊语法
书写语句可以不加 ; 但是推荐加.
定义变量可以不加var,但是推荐加.
不加:全局变量
加:局部变量
流程控制语句
默认 -> 由上到下依次执行
分支 -> if switch
循环 -> for while do…while
switch

  • Java中byte short int char 1.5(枚举) 1.7(String)
  • JavaScript可以接受所有的基本数据类型
  • JavaScript中的Switch也有case穿透,也可以写default,也要写break.
    for的定义
  • Java中 int i
  • JavaScript没有int 只有var
  • for(var i = 0;i <= 100;i++)
for(var i = 1;i <= 9;i++){
    for(var j = 1;j <= i;j++){
        i + * + j + = + i*j
    }
}

JavaScript常见的引用数据类型(对象)
Function
创建

Function 方法名(形式参数列表){
    方法体;
}
var 方法名 = function(形式参数列表){
    方法体;
}
var fun = function(a,b){
    return a + b;
}

fun(3,4);
fun();
fun(3);
fun(3,4,5,6);

调用
方法名(实际的参数);
特点

  • 形式参数列表以及返回值不需要写var(数据类型).
  • 重名的方法(参数列表一样),在Java中不可以(不构成重载),在JavaScript中是可以的 -> 后面的方法会覆盖前面的同名方法.
  • JavaScript中方法的调用只与方法名称有关,和方法的参数列表无关,但是参数是一一对应的.
  • 方法内部有一个内置对象 arguments 封装了方法实际调用的时候传入的所有参数.
    • arguments是数组 -> 数组名[索引]来获取对应的索引的值.
      属性:length参数的个数.
      Array 数组
      创建
  • var arr = new Array(元素列表);
  • var arr = new Array(数组长度);
  • var arr = [元素列表];
    方法
  • join(参数) -> 参数: + 元素1+元素2+元素3 ->
  • push(参数) -> 向数组的末尾添加元素.
    调用
  • 数组名[索引]
    特点
  • Array是个乱炖 -> 什么数据都可以放进去,没有规定数据类型(var)
    • var arr = [1,15,12.26,“ha”,‘h’,‘你好’,“哈喽”];
  • Array的长度可变 -> 前提是代码中访问了对应索引.
  • var arr = [1,2,3,4,5]; //4
  • alert(arr[500]);
    Date
    创建
  • var date = new Date();
    方法
  • toLocaleString() 将date对象转换为一个字符串.
  • getTime() 可以获取距离1970年1月1日00:00:00过去了多少毫秒.
    Math
/*Math不需要创建对象->直接使用Math即可*/

        /*属性 PI 做计算*/
        var π = Math.PI;
        document.write(π+"<br>");

        var r = 5;
        /*pow可以计算x的y次方(幂)*/
        var result = Math.pow(r,2);
        document.write(result+"<br>");

        /*13.4 13/14*/
        /*ceil 对数进行上舍入*/
        r = 13.5;
        var result = Math.ceil(r);
        document.write(result+"<br>");

        /*floor 对数进行下舍入*/
        var result = Math.floor(r);
        document.write(result+"<br>");

        /*round 把数四舍五入为最接近的整数*/
        var result = Math.round(r);
        document.write(result+"<br>");

        /*random 返回0-1之间的随机数 [0.0,1.0)*/
        var result = Math.round(Math.random() * 100);
        document.write(result+"<br>");
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值