javascriptECMA

js 运行在客户端浏览器中 每个浏览器都有一个js 引擎
它是脚本语言 不需要编译 直接可以在浏览器里面执行的
功能:增强用户和HTML的交互过程,让页面具有动态效果,增强用户体验
js分为:ECMA:基本语法
BOM
DOM

js与HTML结合方式:

1:内部js 在HTML页面里写一个script标签  在标签里写js (可以在HTML的任意位置)
2:外部js 文件  用 <script src="" > <script>方式引入js文件

注释:

1:单行注释 //内容
2: 多行注释 /*
注释内容
注释内容
*/

数据类型:

1:原始数据类型
  1:number 整数 小数 NaN(not a number 不是数字的数字类型)
  2:string 字符串 ,他没有字符概念   'a'他也是个字符串
  3:boolean  true false
  4:null 一个对象为空的占位符
  5:undefined 未定义一个变量没有初始化,则默认为undefined
2:引用数据类型   对象

变量:一块存储数据的内存空间
强类型:就是说一但申明一段空间后 空间只能存储同种类型的数据
弱类型语言 :申请一段空间后 这段空间可以存储任意类型的数据
就是说强类型在开辟变量空间时规定了数据类型的存储块
弱类型在开辟的内存里面不规定存储的数据类型的数据
var 变量名 = 变量值;
//例如不同类型的数据类型
//数字类型
var num = 1;
var num1 = 1.2;
var num2 = NaN;
document.write(num+"-----------"+typeof num+"
");
document.write(num1+"-----------"+typeof num1+"
"+"
");
document.write(num2+"-----------"+typeof num2+"
");
//字符串类型的
var str = ‘abc’;
var str1 = “efd”;
document.write(str+"-----------"+typeof str+"
");
document.write(str1+"-----------"+typeof str1+"
");
//定义boolean
var flag = true;
var flag1 = false;
document.write(flag+"-----------"+typeof flag+"
");
document.write(flag1+"-----------"+typeof flag1+"
");
//定义null undefined
var obj = null;
var obj1 = undefined;
var obj2 ;
document.write(obj+"-----------"+typeof obj+"
");
document.write(obj1+"-----------"+typeof obj1+"
");
document.write(obj2+"-----------"+typeof obj2+"
");
//输出结果
NaN-----------number
abc-----------string
efd-----------string
true-----------boolean
false-----------boolean
null-----------object
undefined-----------undefined
undefined-----------undefined
null 的类型是object 就是空就是js 的null

运算符:

  ===包含数据类型的比较运算
  运算类型转换
  例如:
    var b = +"123";
    var c = +"as"
    document.write(b+1);
    document.write(c+1);
    //输出
    124NaN
  //转化为数字类型
var flag = +true;
var f = false;
document.write(typeof flag+"<br>");
document.write(typeof f+"<br>");
//输出
number
boolean
小练习  99 乘法表
<style>
    td{
        border: 1px solid;
    }
</style>
document.write("<table  align='center'>")
for (var i=1;i<=9;i++){
    document.write("<tr>")
    for (var j=1;j<=i;j++){
        document.write("<td>")
        document.write(i+"*"+j+"="+(i*j)+"&nbsp;&nbsp;&nbsp;");
        document.write("</td>")
    }
    document.write("</tr>")
}
document.write("</table>>")
### 基本对象

/*

    Function
    Array
        Boolean
    Date
    Math
        Number
        String
    RegExp
    Globle
 */
/*

Function 对象 方法就是对象 对象就是方法

    1:创建
    2:方法
    3:属性
        length代表形参个数
    4:特点
        1:方法形参类型不用写 返回类型也可以不写
        2:方法就是个对象,如果定义同名方法不会报错,而是会覆盖掉上面的方法
        3:方法的调用只和方法名有关,与参数列表无关
        4:方法申明中有一个隐藏对象(数组)arguments,封装所有实际参数
    5:调用
 */
    //创建
    //方式一  不用
    /*var fun1 =  new Function("a","b","alert(a)");
    fun1(3,5);
    alert(fun1.length);*/
    //方式二 常用
    /*function fun2(a,b) {//形参类型不用写
        alert(a+b);
    }
    fun2(3,5);
    //方式三 var 方法名 =  function(){}
    var fun3 = function (a,b) {
        alert(a+b);
    }*/
    //参数个数
    /*
    求两个数的和
     */
    /*function add(a,b) {
        return a+b;
    }
    var c = add(2,4);
    alert(c);*/
    /*
    任意个数的和
     */
    /*function add() {
        var sum =0;
        for (var i = 0; i <= 10; i++) {
            sum=sum+arguments[i];
            alert(sum);
        }
    }
    add(1,3);*/
/*

Date 对象

    1:创建
        var date= new Date();
    2:方法
        tolocalString() 返回当前时间的本地时间
        getTime() 返回当前时间的毫秒时间数
 */
/*var date = new Date();
document.write(date+"<br>");
document.write(date.toLocaleString()+"<br>");
document.write(date.getTime());*/
/*

Math对象

    1:创建
        特点:
        不用创建
    2:方法
        random()  0~1 含头不含为
        cell()   向上去取整
        floor()  向下取整
        round()  四舍五入
    3:属性
 */
    /*document.write(Math.PI+"<br>");
    document.write(Math.random()+"<br>");//随机数
    document.write(Math.round(3.14)+"<br>");//四舍五入
    document.write(Math.round(3.66)+"<br>");
    /!*
    1到100de 随机数
     *!/
    document.write(Math.floor(Math.random()*100)+1);*/

RegExp对象

/*
正则表达式 RegExp:
1:正则表达式定义字符串入组成规则
\d一个数字
\w数字字母下划线
2:量词
?0次或1次
* 0次或多次
+ 1次或多次
{m,n}m到n次
/
/

正则
1:创建
var reg = new RegExp();
var reg = ***;
2:方法
test()验证指定字符串是否符合指定的规则
*/
//创建
/var reg = new RegExp("\w{6,16}");
var reg1 = /^\w{6,16}$/;
var username = “zhangsan”;
var flag = reg1.test(username);
alert(flag);
/

Global

    1:特点  全局对象 不用创建  只需调用就可以
    2:方法
        encodeURL() //编码
        decodeURL() //解码
        encodeURLComponent() //编码
        decodeURLComponent() //解码
        parseInt();将字符串转化成数字  也可以在变量前加+转化
        他将不是数字的串忽略,只解析数字
        isNaN()
 */
/*var str = "中华人民共和国";
var endode = encodeURI(str);
document.write(endode+"<br>");
var decode = decodeURI(endode);
document.write(decode+"<br>");
//parseInt()
var str1 = '123';
var num = parseInt(str1);
document.write(num+1);
var str2="123asd";
var num2 = parseInt(str2);
document.write(num2+1);*/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值