JavaScript---数据类型

值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol。
引用数据类型:对象(Object)、数组(Array)、函数(Function)。

1.字符串

1.正常字符串我们使用单引号,或者双引号包裹
2.注意转义字符
3.多行字符串编写

//tab 上面 esc键下面
var msg = 
    `hello
world
你好ya
你好`

4、模板字符串

//tab 上面 esc键下面
let name = "yy";
let age = 3;

let msg = `你好呀,${name}`

5、字符串长度

str.length

6、字符串的可变性,不可变

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-76lRIt4u-1578489629551)(JavaScript.assets/1577604656842.png)]
7、大小写转换

//注意,这里是方法,不是属性了
student.toUpperCase()
student.toLowerCase()

8、student.indexOf(‘t’)

9、substring

[)
student.substring(1) // 从第一个字符串截取到最后一个字符串
student.substring(1,3) //[1,3)

2.数组

Array可以包含任意的数据类型

var arr = [1,2,3,4,5,6] ; //通过下标取值和赋值
arr[0]
arr[0] = 1

1、长度

arr.length

注意:加入给 arr.length 赋值,数组大小就会发生变化~,如果赋值过小,元素就会丢失

2、indexOf,通过元素获得下标索引

arr.indexOf(2)
1

字符串的 “1” 和数字 1 是不同的

3、slice() 截取Array的一部分,返回一个新数组,类似于String中的 substring

4、push(),pop() 尾部

push: 压入到尾部
pop: 弹出尾部的一个元素

5、unshift() , shift() 头部

unshift: 压入到头部
shift: 弹出头部的一个元素

6、排序 sort()

(3) ["B", "C", "A"]
arr.sort()
(3) ["A", "B", "C"]

7、元素反转 reverse()

(3) ["A", "B", "C"]
arr.reverse()
(3) ["C", "B", "A"]

8、concat()

(3) ["C", "B", "A"]
arr.concat([1,2,3])
(6) ["C", "B", "A", 1, 2, 3]
arr
(3) ["C", "B", "A"]

注意: concat()并没有修改数组,只是会返回一个新的数组

9、连接符 join

打印拼接数组,使用特定的字符串连接

(3) ["C", "B", "A"]
arr.join('-')
"C-B-A"

10、多维数组

arr = [[1,2],[3,4],["5","6"]];
arr[1][1]
4

数组:存储数据 (如何存,如和取,方法都可以自己实现!)

3.对象

若干个键值对

var 对象名 = {
	属性名: 属性值,
    属性名: 属性值,
    属性名: 属性值
}

//定义了一个person对象,它有四个属性!
var person = {
    name: "yy",
    age: 3,
    email: "1234567@qq.com",
    score: 0
}

Js中对象, {……} 表示一个对象, 键值对描述属性 xxxx:xxxx,多个属性之间使用逗号隔开,最后一个属性不加逗号!

JavaScript中的所有的键都是字符串,值是任意对象!
1、 对象赋值

person.name = "yy"
"yy"
person.name
"yy"

2、使用一个不存在的对象属性,不会报错! undefined

person.haha
undefined

3、动态的删减属性,通过 delete 删除对象的属性

delete person.name
true
person

4、动态的添加,直接给新的属性添加值即可

person.haha = "haha"
"haha"
person

5、判断属性值是否在这个对象中! xxx in xxx!

'age' in person
true
//继承
'toString' in person
true

6、 判断一个属性是否是这个对象自身拥有的 hasOwnProperty()

person.hasOwnProperty('toString')
false
person.hasOwnProperty('age')
true

4.流程控制

if 判断

var age = 3;
if (age>3){ //第一个判断
    alert("haha");
}else if(age<5) {  //第二个判断
   alert("kuwa~");
}else { //否则,,
    alert("kuwa~");
}

while循环,避免程序死循环

while(age<100){
    age = age + 1;
    console.log(age)
}

do{
    age = age + 1;
    console.log(age)
}while(age<100)

for循环

for (let i = 0; i < 100 ; i++) {
    console.log(i)
}

forEach 循环

5.1 引入

var age = [12,3,12,3,12,3,12,31,23,123];

//函数
age.forEach(function (value) {
    console.log(value)
})

for…in

//for(var index in object){}
for(var num in age){
    if (age.hasOwnProperty(num)){
        console.log("存在")
        console.log(age[num])
    }
}

5.Map和Set

Map:

//ES6  Map
//学生的成绩,学生的名字
// var names = ["tom","jack","haha"];
// var scores = [100,90,80];

var map = new Map([['tom',100],['jack',90],['haha',80]]);
var name = map.get('tom'); //通过key获得value!
map.set('admin',123456);  //新增或修改!
map.delete("tom"); //删除!

Set:无序不重复的集合

set.add(2); //添加!
set.delete(1);  //删除!
console.log(set.has(3));  //是否包含某个元素!

6.iterator

es6 新特性

作业:使用 iterator 来遍历迭代我们Map,Set !

遍历数组

//通过for of /  for  in 下标
var arr = [3,4,5]
for (var x of arr){
    console.log(x)
}

遍历map

var map = new Map([["tom",100],["jack",90],["haha",80]]);
for (let x of map){
    console.log(x)
} 

遍历set

var set = new Set([5,6,7]);
for (let x of set) {
    console.log(x)
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值