1. 索引思维
var arr = [11, 22, 33, 44];
function fn(a) {
a[0] = "BB"
}
fn(arr);
console.log(arr);
var arr = 100;
function fn(a) {
a = 200;
}
fn(arr);
console.log(arr);
2. 排序算法
var arr = [8, 5, 9, 3, 6];
for (var i = 0; i < arr.length - 1; i++) {
for (var j = 0; j < arr.length - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
var temp = arr[j + 1];
arr[j + 1] = arr[j];
arr[j] = temp;
}
}
}
console.log(arr);
var arr = [8, 5, 9, 3, 6];
for (var i = 0; i < arr.length - 1; i++) {
var win = i;
for (var j = i + 1; j < arr.length; j++) {
if (arr[win] > arr[j]) {
win = j;
}
}
if (win != i) {
var temp = arr[i];
arr[i] = arr[win];
arr[win] = temp;
}
}
var arr = [8, 5, 9, 3, 6];
var quickSort = function (list) {
if (!Array.isArray(list)) return [];
if (list.length < 2) return list;
var middleIndex = parseInt(list.length / 2);
var middleVal = list.splice(middleIndex, 1);
var left = [], right = [];
for (var i = 0; i < list.length; i++) {
list[i] > middleVal ?
right.push(list[i]) :
left.push(list[i]);
}
return quickSort(left).concat(middleVal, quickSort(right));
}
console.log(quickSort(arr));
3. 作业
console.log('---------------------------');
var arr = [8, 5, 9, 3, 6];
for (var i = 0; i < arr.length - 1; i++) {
for (var j = 0; j < arr.length - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
var temp = arr[j + 1];
arr[j + 1] = arr[j];
arr[j] = temp;
}
}
}
console.log(arr);
console.log('---------------------------');
var a = [11, 22, 33, 44];
var sum = 0;
for (var i = 0; i < a.length; i++) {
sum += a[i]
}
console.log(sum);
console.log('---------------------------');
var arr = [11, 22, 33, 44];
var sum = arr.reduce(function (pre, cur) {
return pre + cur;
}, 0);
console.log(sum);
console.log('---------------------------');
var arr = [8, 5, 9, 3, 6];
var max = arr[0];
var min = arr[0];
for (var i = 1; i < arr.length; i++) {
if (arr[i] > max) {
max = arr[i]
}
if (min > arr[i]) {
min = arr[i]
}
}
console.log(max, min);
console.log('---------------------------');
var arr = [8, 5, 9, 3, 6];
var max = arr.reduce(function (pre, cur) {
return pre > cur ? pre : cur;
});
var min = arr.reduce(function (pre, cur) {
return pre > cur ? cur : pre
})
console.log(max, min);
console.log('---------------------');
var arr = [6, 4, 7, 2, 8, 5];
for (var i = 0; i < arr.length; i++) {
for (var j = i; j < arr.length; j++) {
if (arr[i] + arr[j] == 10) {
console.log(arr[i], arr[j]);
break;
}
}
}
console.log('---------------------------');
var num = 1342;
var arr = [];
while (num) {
console.log(num % 10);
arr.unshift(num % 10)
num = parseInt(num / 10)
}
console.log(arr.length + "个", "[" + arr.join() + "]");
console.log('---------------------------');
var a = [0, 1, 2, 3, 4], b = [1, 3, 5, 7, 9]
for (var i = 0; i < a.length; i++) {
for (var j = 0; j < b.length; j++) {
if (a[i] == b[j]) {
console.log(a[i]);
break;
}
}
}
console.log('---------------------------');
var index = -1;
var arr = [2, 3, 4, 56, 67, 98];
var num = 100;
for (var i = 0; i < arr.length; i++) {
if (arr[i] > num) {
console.log(i);
index = i;
break;
}
}
if (index != -1) {
arr.splice(index, 0, num);
} else {
arr.push(num);
}
console.log(arr);
console.log('---------------------------');
var arr = [2, 3, 4, 56, 67, 98];
var num = 63;
var index = arr.findIndex(function (item) {
return item > num
})
console.log(index);
if (index != -1) {
arr.splice(index, 0, num);
} else {
arr.push(num);
}
console.log(arr);
console.log('---------------------------');
var arr = [1, 3, 1, 4, 2, 3, 6, 2, 6, 1, 5];
var newArr = [];
for (var i = 0; i < arr.length - 1; i++) {
for (var j = i + 1; j < arr.length; j++) {
if (arr[i] == arr[j] && newArr.indexOf(arr[i]) == -1) {
newArr.push(arr[i]);
break;
}
}
}
console.log(newArr.sort(function (a, b) {
return b - a
}));
var num = 692223361219;
function ean13(n) {
var arr = [];
while (n) {
arr.unshift(n % 10)
n = parseInt(n / 10);
}
var odd = 0;
var even = 0;
for (var i = 0; i < arr.length; i++) {
if (i % 2 == 0) {
odd += arr[i];
} else {
even += arr[i]
}
}
var res = (odd + even * 3) % 10;
if (res == 0) {
arr.push(0);
} else {
arr.push(10 - res);
}
return arr.join("");
}
console.log(ean13(num));
var arr = [];
for (var i = 0; i < 100; i++) {
arr[i] = i + 1;
if (arr[i] % 3 == 0 && arr[i] % 5 == 0) {
arr[i] = "FlipFlop"
} else if (arr[i] % 3 == 0) {
arr[i] = "Flip"
} else if (arr[i] % 5 == 0) {
arr[i] = "Flop"
}
}
console.log(arr);
4. 字符串
var str = "你好呀!";
var str1 = '老罗真的好帅哦~';
var str = String("你好");
var str = new String("你好呀");
var str1 = "abc";
console.log(typeof str1);
var str2 = new String("你好呀");
console.log(typeof str2.toString());
5. 字符串方法
var str = "abc123";
console.log(str[2]);
var str = "我爱你a";
console.log(str.charCodeAt(0));
console.log(str.charCodeAt(1));
console.log(str.charCodeAt(2));
console.log(str.charCodeAt(3));
var str = String.fromCharCode(25105, 29233, 20320);
console.log(str);
var str = "abc123";
console.log(str.search("c"));
console.log(str.search("z"));
console.log(str.search(/a/));
var str = "abc123";
console.log(str.indexOf("c"));
console.log(str.indexOf("z"));
console.log(str.indexOf(/a/));
var str = "abc123";
console.log(str.match("c"));
console.log(str.match("1c"));
var str = "abc123abc";
console.log(str.lastIndexOf("c"));
console.log(str.lastIndexOf("c", 5));
var str = '台上有一位绝世美男子,今年18岁';
console.log(str.slice(7, 10));
console.log(str.slice(7));
var str = '台上有一位绝世美男子,今年18岁';
console.log(str.substring(10, 7));
console.log(str.substring(7));
var str = '台上有一位绝世美男子,今年18岁';
console.log(str.substr(7));
console.log(str.substr(7, 3));
var str1 = "我是";
var str2 = "美男子";
var str3 = str1 + str2;
var str4 = str1.concat(str2, "!");
console.log(str3);
console.log(str4);
var str = "abc-123";
console.log(str.split());
console.log(str.split(""));
console.log(str.split("-"));
var str = "台上有一个男子";
var str1 = str.replace("男", "美男");
console.log(str);
console.log(str1);
var str = "abc123";
var str1 = str.toUpperCase()
console.log(str1);
var str = "ABCDEGGSASDASDFD";
var str1 = str.toLowerCase()
console.log(str1);
var str = "我爱你!";
var str1 = str.repeat(100);
console.log(str1);
var s = "很";
var str = `今天天气${s}好`;
console.log(str);
var a = 10;
var b = 20
var str = "计算的结果:" + a + b;
console.log(str);
var str = `计算结果是:${a + b}`;
console.log(str);
var str1 = `aaa`;
console.log(typeof str1);
var str = " 你好 帅哦! ";
console.log(str.trim());
console.log(str.trimEnd());
console.log(str.trimStart());
var str = "我是帅哥";
console.log(str.padStart(10, "."));
console.log(str.padEnd(10, "."));
var str = "abc123";
console.log(str.includes("1c"));
var str = "H e l ** l o Wo r L d !";
console.log(str.replace(/\*/g, "").replace(/ /g, ""));