JS基础

一.JS介绍

  JS语言是浏览器脚本语言,可以编写运行在浏览器上的代码程序,书写在script标签中,属于解释器、弱语言类型编程语言。

二.JS的组成

JS语言由ES语法、DOM(document object model)、BOM(browser object model)三部分组成。ES(ECMAScript)语法分为ES5和ES6。

1.行间式
书写在一个个全局事件名属性中
<div id="ddd" onmouseover="this.style.color = 'red' " onmouseleave= "this.style.color = 'blue'">行间式</div>

2.内联式 
存在于标签script中,语法采用的是小驼峰命名法,属性的值都是用字符串形式进行赋值
<script id="d1">
    d1,style.backgroundColor = "pink"
</script>

3.外联式
是通过script标签的src数据链接外部js文件
<script src= "js文件.js"></script>
JS存在位置

(JS出现在head标签底部:依赖型JS库 ;出现在body标签底部:功能型JS脚本)

JS以;分号标识语句的结束,以作用域({})标识附属关系

三.JS变量

ES5语法:
    var ddd=1; 无块级作用域变量
    ddd=1; 全局变量

ES6语法:
    let ddd=1; 局部变量
    const ddd=1; 常量
  
ES5都有块级作用域,ES6都不具有块级作用域;ES5只有函数才能产生局部作用域,ES6块级作用域就可以为局部作用域
由字母,数字,_,$组成,不能以数字开头(可以有中文字符)
区分大小写
不能出现关键字以及保留字
提倡小驼峰书写规范
变量命名规范

四.三种弹出框

alert:普通弹出框
prompt:输入框
confirm:确认框

window为顶级对象,三种弹出框都是附属于window的

五.四种调试方式

alert();console.log();document.write();浏览器断点调试

六.基本数据类型

number:数字类型
        var num=1;
        console.log(typeof (num),num);
        // 判断方式
        console.log(typeof num=="number");
    
string:字符串类型
        var str = "hello";
        console.log(typeof (str),str);
        // 判断方式
        console.log(typeof str=="string");   

boolean:布尔类型  
        var ros = true;
        console.log(typeof (ros), ros);
        // 判断方式
        console.log(typeof ros=="boolean");    
undefined未定义类型
        var abc = undefined;
        console.log(typeof(abc), abc);

引用类型:
    function:函数类型
        var fn=function (a) {return a;};
        console.log(typeof (fn),fn);
    
    object:对象类型
                name:"xia"
        };
        console.log(typeof (obj),obj);
        console.log(obj instanceof Object);

对象类型:
    null空对象类型:
        var x= null;
        console.log(typeof (x),x);
        console.log(x instanceof Object);
    Array:数组对象
        var a = new Array(1,2,3,4,5,6);
        console.log(a,typeof a);
        console.log( typeof a=="object");
        console.log(a instanceof Array);
    Date:时间对象
        var a = new Date();
        console.log(a, typeof a);
        console.log(typeof a == "object");
        console.log(a instanceof Date);
    RegExp:正则对象
        var a =new RewExp ('a');
        a = /[cdd]/
        console.log(a, typeof a);

        console.log(typeof  a == "object");
        console.log(a instanceof RegExp);
View Code

七.数据转换

1.数字|布尔 转换为字符串:

var a = 10 or true;console.log(String(a));console.log(a.toString());

2.布尔|字符串 转换为数字:
var a =true or 'hhh';console.log(Number(a));console.log(+a);

parseFloat()(浮点类型)
parseInt()(整型)

3.字符串|数字 转换为 布尔类型:
var a=100 or "11";console.log(Boolean(a));

4.自动转换
2+ + "6"; //8
2 + "6";//"26"
"10" - 5; // 5

NaN不与任何数相等,包括自己,通过isNaN()进行判断
原文地址:https://www.cnblogs.com/xiamenghan/p/10134014.html