冒泡排序:
思路:一组数组,从头到尾依次比较相邻两个数大小,如果大数在前,小数在后,就交换两个数的位置,依次比较,使全部数据按从小到大排序
例子:
var arr = [5,3,7,1]
for(let i=0;i<arr.length-1;i++){
for(let j=0; j<arr.length-1-i;j++){
if(arr[j])>arr[j+1]{
let temp=arr[j]
arr[j]=arr[j+1]
arr[j+1]=temp
}
}
}
console.log(arr)
选择排序:
思路:将第一位依次与后面的元素相比较,得到最小值,与第一位交换,再用第二位依次与后面元素相比较,得到最小值,与第二位交换
例子:
例子:
var arr = [5,3,7,1]
for(let i=0;i<arr.length;i++){
for(let j=i+1; j<arr.length;j++){
if(arr[j])>arr[j+1]{
let temp=arr[j]
arr[j]=arr[j+1]
arr[j+1]=temp
}
}
}
console.log(arr)
数组去重
/*
选择排序
+ 思路:
=> 一组无序的数,先使用第一个数和后面的所有数依次进行比较,如果那个大交换位置就放在后,再使用第二个和后面的依次进行比较...
+ 无序的数
=> 5, 3, 7, 1
*/
var arr = [5, 3, 7, 1]
for(var i=0; i<arr.length-1; i++){
//注意点:这里arr.length不能减1,因为每一个数都要比较到。如果减1的话,会导致最后一个数每次都比较不到
for(var j=i+1; j<arr.length; j++){
//使用i下标位置的元素和j位置的元素依次进行比较
// console.log(i, j)
if(arr[i]>arr[j]){
var temp
temp = arr[i]
arr[i] = arr[j]
arr[j] = temp
}
}
//console.log('-------------')
}
console.log(arr)
对象:
//1、使用new关键字结合构造函数Object()来创建一个空的对象
var obj=new Object();
//2、使用大括号{}来创建一个空对象
var obj={}
JSON:
概念:
JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)。JSON和JS对象的格式是一样的,只不过JSON字符串中的属性名必须加双引号。
JSON 是轻量级的文本数据交换格式
JS中的对象只有JS自己认识,其他语言都不识别。JSON就是一种特殊的字符串,这个字符串可以被任意的语言所识别,并且可以转为其他语言中的对象,JSON主要用于数据交换
JSON的分类:
1、对象表示 {}
var obj = '{"name" : "张三", "age" : 18, "sex" : "男"}'
2、数组表示 []
var arr = '[10, 66, "hello", true]';
注意点:JSON里面能设置的值的类型,字符串、数值、布尔、null、对象、数组,不能是函数,因为其他语言不能识别
例如:
var obj = '{"name" : "张三", "age" : 18, "sex" : "男"}'
var arr = '[10, 66, "hello", true]'
var obj = '{"arr" : [1, 2, 3]}'
var arr = '[{"name" : "张三", "age" : 18, "sex" : "男"},{ "name" : "李思","age" : 20,"sex": "女"}]'
JSON转对象的方法:
JSON.parse()可以将JSON字符串转为js对象。
JS对象转JSON的方法:
JSON.stringify() 可以将JS对象转为JSON字符串