Js基础

203 阅读3分钟

1.JavaScript核心

1.核心(ECMAScript)————描述JavaScript的语法和基本对象

2.文档对象模型(DOM)————描述处理网页内容的方法和接口

3.浏览器对象模型(BOM)————描述与浏览器进行交互的方法与接口

2.js文件引入方法

1.写在script内部,现在body内部且是最后面

2.引入外部文件

<script src=''./xx/xx></script>

3.变量

3.1 基本数据类型 number string Boolean undefined null

3.2 typeof 查看数据类型

  • typeof a
  • typeof (a)

3.3 变量定义

var num=1;

3.4 字符串拼接 "+" 除了加法能进行字符串拼接之外,减法,乘法,除法都不能 减乘除:如果参数是number的话,正常计算;有一个是string的话,会利用number()方法进行转化,转化成功按照number计算,转化不成功就是NAV。

4.数组

4.1创建一个数组的方式

var arr=[];
var arr1=new Array();

4.2数组赋值

arr=[1,2,3];
var arr1=new Array(4);//参数为一个值,定义数组长度
var arr2=new Array(1,2,3);//参数为多个值,数组初始化[1,2,3]

4.3数组长度

var arr1=[1,2,3];
arr1.length;//获取数组长度
当数组声明过了,没有赋值,则为undefined
eg:arr1[4];//undefined

5.分支&循环&函数

5.1 分支

  • 单一选择 if
  • 二路选择结构 if else
  • 内联三目运算符 ?:
  • 多路选择结构 switch

5.2循环

  • for
  • while&do while(至少执行一次)

5.3函数

1.局部变量 全局变量

2.用关键字function定义

//定义函数
funcion sum(num1,num2){
    var num3=num1+num2
    return num3;//函数里遇见return 则下面语句不会再执行
    console.log(3);//不会执行,上面有return
}
sum(1,3);//函数调用
var num4=sum(2,4);
console.log(num4);

3.var变量提升,只是声明一个变量,赋值没有用

//可以执行,和c++一样,提前调用方法
a();
function a(){
    console.log('123456789');
}

//报错,因为var b 相当于声明了变量b,不是一个函数啦
b();
var b=function(){
    console.log('12345678')
}

6.对象

6.1定义一个对象

对象下面有属性,方法

法一

//Student 为一个对象
var Student={
    //key:value
    name:'lxw',//属性
    age:18,
    eat:funtion(){
        console.log('eating.....');
    }//方法
}
Student.name//调用属性
Student.eat();//调用对象方法

法二

var obj1 =new Object();
obj1['name']='lixiaowen';
console.log(obj1);

6.2.for in 循环对象

var Student={
    name:'lixiaocai',
    age:18,
}
for(key in Student){
    console.log(key);//循环展示每一个key
    console.log(Student[key]);//循环展示每一个value,变量用[]
}

6.3 内置对象Math和Data

7.字符串对象

7.1创建字符串对象

var str1=new String("123456789");

7.2 String方法

charAt() 	返回指定索引位置的字符
charCodeAt() 	返回指定索引位置字符的 Unicode 值
concat() 	连接两个或多个字符串,返回连接后的字符串
fromCharCode() 	将 Unicode 转换为字符串
indexOf() 	返回字符串中检索指定字符第一次出现的位置
lastIndexOf() 	返回字符串中检索指定字符最后一次出现的位置
localeCompare() 	用本地特定的顺序来比较两个字符串
match() 	找到一个或多个正则表达式的匹配
replace() 	替换与正则表达式匹配的子串
search() 	检索与正则表达式相匹配的值
slice() 	提取字符串的片断,并在新的字符串中返回被提取的部分
split() 	把字符串分割为子字符串数组
substr() 	从起始索引号提取字符串中指定数目的字符
substring() 	提取字符串中两个指定的索引号之间的字符
toLocaleLowerCase() 	根据主机的语言环境把字符串转换为小写,只有几种语言(如土耳其语)具有地方特有的大小写映射
toLocaleUpperCase() 	根据主机的语言环境把字符串转换为大写,只有几种语言(如土耳其语)具有地方特有的大小写映射
toLowerCase() 	把字符串转换为小写
toString() 	返回字符串对象值
toUpperCase() 	把字符串转换为大写
trim() 	移除字符串首尾空白
valueOf() 	返回某个字符串对象的原始值