数组的浅复制和深复制
数组的浅复制: 只是复制了数组的地址,数组中的值没有改变
数组的深复制: 复制了数组中的值,相当于把原数组的值放入了新数组
var arr = [1, 2, 3, 4, 5];
var arr2 = arr; // arr2 = [1,2,3,4,5]
数组的浅复制 --- 只是复制了地址
var arr = [1,2,3,4,5,6];
var arr1 = arr.slice();
arr1.push(7);
console.log(arr1); // arr1 = [1,2,3,4,5,6,7]
数组的深复制 --- 复制数组中的值
字符串
字符串就是一串字符,由双(单)引号括起来。字符串是 JavaScript 的一种基本的数据类型。
1、var str=‘亲’; 基本类型 定义一个字符串变量str,内容为‘亲
2、var str = new String(“hello”); 引用类型 定义一个字符串变量str,内容为hello, 注意此刻str为object(对象)类型 用new产生的变量都是引用类型的变量,也叫对象。
var s1 = "string";
console.log(typeof(s1)); //输出的是 string
var s2 = new String("string");
console.log(typeof(s2)); //输出的 object
字符串中的方法
includes 判断字符串中是否存在某个值
indexof 判断字符串中是否存在某个值,存在就返回角标,不存在就返回-1
lastIndexof 判断数组中是否存在某个值,返回最后一次出现的下标
concat 字符串拼接
slice 截取数组中的部分值,返回一个新的数组
charAt() 访问角标对应的值
charCodeAt() 访问角标对应的值的ASCII值
String.fromCharCode() 把ASCII值转成对应的字
substring(i , i) 用于提取字符串中介于两个指定下标之间的字符
substr(i , 数量) 用于返回一个从指定位置开始的指定长度的子字符串。
replace(old , new) 替换(默认只会替换第一个)
toUpperCase() 用于把字符串转换为大写。
toLowerCase() 用于把字符串转换为小写。
对象
什么是对象?
对象就是可以拥有属性和方法的一个集合,如:字符串、数值、数组、函数等。
对象的访问方式
1.用点访问
person.name person.age
2.用中括号访问
person['name'] person['age']
日期对象
日期对象的作用是记录时间,在js中记录的标椎时间是 1970.1.1 0:0:0
日期对象的创建
var date = new Date() ;
无参创建 --- 拿到的是电脑的当前时间。
var date2 = new Date(0) ;
数字单参创建 --- 拿到的是标椎时间
var date3 = new Date(1000);
数字单参创建,时间的毫秒数 1s = 1000ms
var date4 = new Date(1970,10,1,1,1,1) ;
数字多参创建 年月日时分秒
var date5 = new Date('1970-1-1 1:1:1') ;
字符串单参创建 年[-*,]月[-*,]日 时:分:秒