javascript

参考:武义忠学习笔记

6.13(字符串)

1.定义:字符串就是用单引号或者双引号包裹起来的,零个或多个排列在一起的字符。(引号成对出现)

字符串是js内置的一个对象,他有自己的属性和方法

2创建方式:

1.字面量方式创建

var   变量名 =  ‘任意字符/空’

2.String  对象方式创建

var 变量名 = new String(‘任意字符/空’

3.嵌套方式

双引号包裹单引号

单引号包裹双引号

不能同种符号嵌套,会报错

4.字符串在编辑器中不能换行,换行需要其他符号连接

直接换行会报错

用反斜杠连接,将下一行的字符串放到行首,不然会有多余空格

用+号拼接,拼接时注意将两段字符当作独立的字符串处理,所以两段字符都要包裹在成对的双引号内

属性

字符串属性:有三个

 

3.嵌套方式:

双引号包裹单引号

单引号包裹双引号

不能同种符号嵌套,会报错

4.字符串在编辑器中不能换行,换行需要其他符号连接

直接换行会报错

用反斜杠连接,将下一行的字符串放在行首,不然会有多余空格

用+号拼接,拼接时注意将两段字符当作独立的字符串处理,所以两段字符都要包裹在成对的双引号

5属性

字符串属性:有三个property  constructor length

 

 

 

6.17

1数组

1.定义

按照一定顺序排列的一组任意类型的值

注意:数组内元素用逗号隔开,可以两个逗号之间什么都不放,代表一个空元素

2.创建方式:

1.字面量方式:var arr = 【元素1,元素2,元素3】

2.var  arr = new array (元素1,元素2,元素3)

3.数据类型

数组的类型  object

typeof arr == object

数组内的元素可以是任意类型

var arr = [ '123',1,false,null,undefined]

4.判断一个对象是否是数组

1.Array.isArray()

描述:判断一个对象是否是数组

语法:Array.isArray(对象)

参数:对象(变量名称/数据)

返回:类型 值

是数组 Boolean true

非数组 Boolean false

2.valueOf()

描述:返回原数组

语法:数组.valueOf()

参数:无

返回:类型  值

Object 原数组

5.数组的属性:

语法:数组.length  

返回值是number

描述:设置数组的长度

返回:

若原数组长度大于number,返回一个舍弃数组超出number的新数组

若原数组长度小于number,返回一个用empty补全的数组

若设置的长度非number,报错

6.获取数组的内容:

语法:arr[index]

注意:

1.index范围0-arr.length-1

2.若index超出范围返回undefined

7.数组的遍历:

1,for循环

语法:for(var i=0;i<=arr.length-1,i++){}

arr[i]

for in

注意 :index 默认从0开始

语法:for(var index in arr){}

arr[index]

3.for of

语法:for(var item of arr){}

consle.log(item)

4.forEach()

语法:arr.forEach(function(item,index)){}

item 

index

5.map()

语法:arr.map(function(item,index)){}

item

index

8.数组的方法:

一.增(数组元素的插入和拼接)

1.push()

描述:将元素插入到数组的末位

语法:数组.push(元素)

参数:要插入的元素(任何数据类型都可以)

返回:类型 值

number 插入元素后的新数组的长度

注意:修改原数组

2.unshift()

描述:将元素插入到数组的第一位

语法:数组.unshift(元素)

参数:要插入数组的元素

返回:类型 值

number 新数组的长度

注意:修改原数组

3.concat()

描述:连接两个数组,返回新的数组

语法:数组1.concat(数组2)

参数:要拼接在数组1后面的数组

返回: 类型  值

参数为空    数组   数组1

参数为任意类型     数组   将该元素插入到数组1的末尾

参数为数组       数组                  将数组2拼接到数组1的末尾

注意:不修改原数组

删(数组元素的删除)

1.delete arr【index】

描述:删除数组元素

语法:delete arr[index]

参数:数据类型  值

Boolean    true/false

注意:

改变原有数组

不能直接delete元素

2.pop()

描述:删除数组最后一个元素

语法:数组.pop()

参数:无

返回:被删除的元素

注意:改变原有数组

shift()

描述:删除数组第一个元素

语法:数组.shift()

参数:无

返回:类型  值

不定   被删除的元素

注意 : 改变原有数组

改(对数组元素的截取,修改和插入)

1.slice()

描述:数组的截取

语法:数组.slice(startIndex,endIndex)

参数:  截取的范围包涵startIndex,startIndex从0开始

返回类型  值

1.参数正常(startIndex从0开始且小于endIndex):arr【arr[startIndex],...,arr[endIndex-1]】

2.参数只有一个且大于等于0,小于数组.length:arr[arr[idnex+arr.length],...,arr[arr.lehgth-1]]

3.参数只有一个且小于0

4.参数超出数组.length-1

4.1只有一个参数且超出

4.2startIndex超出范围

4.3endIndex超出范围

【arr[startIndex],...,arr[arr.length-1]】

2.splice()

描述:对数组元素进行截取,删除,插入,修改

语法:数组.splice(开始的下标,删除的个数,添加的元素(可选))

参数:三个参数,startIndex(0-数组.lenght-1)

返回:类型,值

注意:

查(数组元素的查找)

注意:获取某个元素在数组中位置的下标

1.indexOf()

描述:获取某个元素在数组中第一次出现的位置的下标

语法:数组.indexOf(元素)

参数:被查找的元素

返回:类型 值

存在   number index(从0开始)

不存在  number

2.lastIndexOf()

描述:获取某个元素在数组中最后一次出现的位置的下标

语法:数组.lashIndexOf(元素)

参数:被查找的元素

返回:类型 值

存在  number   index(从0开始)

不存在  number -1

转换(把数组转换成字符串)

1.join()

描述:将数组按照一定格式转化成字符串

语法:数组.join('字符')

参数:字符,可以为空

返回:类型 值

有参数    字符串      “元素1字符元素2字符。。。”

无参数   字符串      ”元素1,元素2.。。。“

参数是   字符串     ”元素1元素2元素3.。。。“

注意:不改变原数组

2.toString()

描述:将数组转换成字符串

语法:数组.toString()

参数:无

返回:类型  值

string   元素,元素,元素

排序()

1.reverse()

描述:将数组顺序颠倒

语法:   数组.reverse()

参数:无

返回: 类型 值

array   [元素最后一个,...,元素第0个]

注意:对原数组有修改

2.数组.sort()

描述:数组排序,排序规则是按照编码排序

语法:数组.sort(方法)

参数:可选

返回:类型 值

1.无参数    arrav      按照编码从小到大的数组

2.有方法作为参数     array    按照方法的规则排序数组

一堆数组的深浅复制

简单数据类型不存在深浅复制问题

应用:从后台取出来的数据,可能需要多种处理,这时候就需要对数组进行深复制

浅复制:

对复制的数组修改,会改动原数组

深复制:

对复制的数组修改,不会造成原数组的改动,因为是两个不同的数组

6.18

1.应用:在实际工作中通常会被一个数据定义成对象,而这个对象下可以有很多自己的属性,属性也可以是方法,这样直接调用这个对象就可以了

2定义:包裹在{}里面拥有键值对的数据集

键名:属性名;

注意:1.一般把属性名用引号包裹起来

2.默认属性名是字符串类型

3.在对象中出现两个属性名相同的值,后面的将前面的属性值覆盖

键值:属性值;

注意:

可以是任意数据类型

键名和键值通过冒号连接,多个属性之间用逗号分割

3.对象使用的方法:

增(添加)

1.对象名.属性值=值

var obj = {} ;

obj.a = 1;

console.log(obj)

2.对象名['属性名' ]  =值

var  obj  = {};

obj['a']=1

conslole.log(obj)

delete属性名

var obj  = {a:2} ;

obj['a']  =1 ;

delete.obj.a

console.log(obj)

1. 对象名.属性值 = 值

var obj = {a:2};

obj.a = 1;

console.log(obj);

2. 对象名【‘属性名’】 = 值

var   obj = {a:2} ;

obj['a'] =1 ;

console.log(obj);

1.对象名.属性名

注意:该属性名必须是字符串字面量,不能是变量或数字

2.对象名【属性名】 ,属性名  可以是字符串,字符串变量或数字

查找不到对象中的属性名,返回undefined

3.对象的相关操作

1.object.keys()

描述:获取对象中的所有属性名

语法:Object keys (对象名)

参数:对象名

返回:类型  值

对象不为空  一个把属性名子作为字符串元素的数组

空对象   Array 空数组

2.in

描述:查找对象中是否含有某个属性

语法:‘属性名’   in 对象

返回:   类型    值

有   Boolean    true

无   Boolean    false

3.for in

描述:遍历对象

语法:  for(var i in 对象名){}

参数:i 代表 属性名

4.with

描述:批量修改对象的属性值

语法:with(对象名){

属性名1= 值1;

属性名2 =值2;

}

返回:无返回值;

注意:修改原对象;

 

 

 

 

 

 

 

 

 

 

 

 

 

方法:

1.创建新数组遍历插入元素

2.concat

9.二维数组:

9.1初始:

定义:数组中的元素是一堆数组,这样的数组称为二维数组

应用:后台返回一个表格类的数据有行有列,可能会用二维数组

数组内元素的获取

arr[index1][index2]

数组的长度arr.length

遍历:

一维数组遍历方法的嵌套

注意:

注意内外部循环   迭代条件名称不能相同

注意内外部循环 i  j 不能相同

注意item  index 参数不能重名

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

   

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值