函数参数不同类型的传值
函数参数传递和基本数据类型的变量赋值一样的,赋值后两个变量互不影响。
函数参数的传递和复杂数据类型的变量赋值是一样的,是地址的赋值,赋值后两个变量操作同一个空间。
排序方式
冒泡排序
数组的选择排序
严格模式
use strict 开启严格模式
// 在作用域的最前面,写上字符串 use strict 就开启严格模式了
// 开启严格模式
// "use strict"
1. 在严格模式下,申明变量必须要使用关键字声明,否则报错
2. 在严格模式下,定义函数的时候函数的形参不能同名
// 3. 在严格模式下,全局函数中的this不在指向window,变为undefined
// function fn(){
// // 默认,全局作用域下的函数内部的,关键字this指向了window对象
// console.log(this);
// }
// fn();
注意!!!在全局的window对象中本身就有name属性,且值为空字符串
// 我们在全局中最好不要使用name变量
ES5
现在我们使用的大部分语法还是ES3的语法
ES5的数组常见方法
indexof方法
1.forEach() 遍历数组
// 不会改变原数组
// 没有返回值
forEach(function(item,index,arr){
// item 表示数组中的每一个元素
// index 表示数组中索引
// arr 表示数组本身}
map()映射 根据特定的条件计算返回数组元素计算后的结果,是一个新数组/ 不会改变原数组
// 返回值为:按要求改变的新数组,按条件返回元素,条件要写在return后
filter() 按条件过滤数组中的元素,符合条件的元素返回组成一个新数组 // 不会改变原始的数组
// 返回值: 是符合条件的原数组中的元素,组成的新数组
some() 遍历数组,只要数组中有一个元素符合条件,返回布尔值true,否则返回false,循环数组中,只要出现了一次符合条件的,就停止循环。 // 不会改变原始的数组
// 返回值:布尔值
every() 遍历数组,只要数组中有一个元素不符合条件,就返回false,全部符合条件才返回true;循环数组中,只要出现了一次不符合条件的,就停止循环。 // 不会改变原始的数组
// 返回值:布尔值
字符串
1.字面量方式创建
var str1 = 'hello'
2.内置构造函数创建字符串 String()
// var str = new String();
// console.log(str);// 空字符串
小括号内传递的参数就是要创建的字符串。
// 字符串有一个属性叫做length,是字符串的长度
// console.log(str.length);
for in
for循环不能遍历对象
可以使用for-in循环遍历对象
for(var key in obj){}
key 就是对象的属性名
obj 就是要遍历的对象
字符串常用的方法
chart(索引)
根据索引查找在字符串中的对应字符,如果找不到则返回空字符串。
console.log(str.charAt(0));
charCodeAt(索引)
根据索引查找在字符串中的对应字符的ASICC编码;如果没有则返回NaN
console.log(str.charCodeAt(0))
indexOf(内容)
查找内容在字符串中的索引下标,如果没有则返回-1
console.log(str.indexOf('h')); // 0
split(内容)
字符串根据指定的内容字符,炸开,形成一个数组
console.log(str.split('o')); // ["hell", "arey", "u", "k"]
substring(索引1,索引2)
根据索引截取字符串中的内容,返回截取的内容,不会影响原始字符(包前不包后,不包含大的索引)
console.log(str.substring(1,3));
substr(起始索引,截取的个数)
从起始索引开始截取对应的个数
console.log(str.substr(0,3));
toLowerCase()
转为小写
toUpperCase()
转为大写
replace(要替换那个内容,替换为什么内容)字符串内容替换
// var str = 'helloareyouok';
// console.log(str.replace('areyouok',' world'));//hello world
对象、排序、数组及字符串的常见方法
最新推荐文章于 2024-05-17 13:52:13 发布