JavaScript 的一些常用方法
前言
一个完整的 JavaScript 实现是由以下 3 个不同部分组成的:
ECMAScript(核心语法)
BOM(浏览器操作)
如何添加JS注释
// 单行注释
/*
此处可以写多行注释
*/
JS如何定义变量?var、let、const定义变量有什么区别
var test = "测试文本";
var test1 = "测试文本", test2 = 1, test3 = "test"; //同时定义多个变量
var a = "a",
b = "b",
c = 666; //多行定义多个变量
// 作用域用法
{
var txt = "hello";
}
alert(txt); //块之外也可正常使用变量 txt
{
let txt1 = "hello";
}
alert(txt1); //块之外不可使用变量 txt1
const A = 123;
A = 555; //会出错,通过const定义的变量,不允许重新赋值,作用域与let相似
JS如何获取变量原始类型
var txt = "测试文本";
typeof txt //返回string
typeof 66 //返回number
JS操作字符串常用方法
var txt = "abcdefg";
txt.length //获取字符串长度
//索引位从0开始计算,未找到均返回-1
txt.indexOf("bc"); //获取字符串指定文本首次出现的位置
txt.indexOf("g",5); //从索引位置5开始查找
txt.lastIndexOf(); //获取字符串指定文本最后一次出现的位置
txt.search("d"); //返回指定文本的位置
txt.slice(1,4); //返回“bcd”,提取字符串指定位置字符并返回
txt.slice(-2,-1); //返回“f”,从字符串结尾开始计算
txt.slice(4); //从第4位开始,获取剩下所有字符
txt.substring(1,4); //获取字符串指定位置字符,与slice区别在于不允许传入负数
txt.substr(4,3); //从第4位开始,截取3个字符,第二个参数省略,则返回剩余全部字符
txt.replace("ab","55"); //替换指定字符串,如果匹配到多个,则只替换首个匹配字符串
txt.replace(/AB/i,"55"); //默认大小写敏感,此正则表达式忽略大小写
txt.replace(/ab/g,"55"); //替换所有匹配项
txt.toUpperCase(); //转大写
txt.toLowerCase(); //转小写
txt.trim(); //删除两端空白符
txt[0]; //返回a,通过索引获取字符
txt.split(","); //分割字符串并转为数组
JS如何保留小数位数
var num = 13.67
num.toFixed(1); //保留一位小数,省略参数则默认0位;舍弃位大于5会进位
JS运算符有哪些
1+1 //加法
1-1 //减法
1*1 //乘法
1/1 //除法
1++ //递增
1-- //递减
7 % 2 //获取余数
7 ** 2 //取幂
输出方式
alert(1); //弹框
console.log(1); //输出到控制台
JS对数组操作的支持有哪些
var arr = ["a","b","c"]; //定义一个数组
var arr1 = [
"name",
"age",
"title"
]; //跨行声明
var arr2 = new Array("a","b","c"); //效果与上面的方式完全一致,建议使用上面的方式
var txt = arr1[1]; //获取指定索引元素
arr1[1] = "测试"; //修改制定元素
arr1[0] = txtFunction; //数组中可以存储不同类型元素,如对象,数字,字符串
arr1.length; //返回数组长度
arr1.sort(); //排序
arr1.reverse(); // 反序
arr1.sort(function(a, b){return 0.5 - Math.random()}); //随机排序
// 内置函数 forEach() 遍历数组
var fruits, text;
fruits = ["Banana", "Orange", "Apple", "Mango"];
text = "<ul>";
fruits.forEach(myFunction);
text += "</ul>";
function myFunction(value) {
text += "<li>" + value + "</li>";
}
arr1.push("001"); //添加新元素
arr1[6] = "002"; //制定索引位添加新元素
Array.isArray(arr1); //返回true 判断是否是数组
function isArray(x) { //如果老浏览器不支持,则重写isArray()方法
return x.constructor.toString().indexOf("Array") > -1;
}
arr1 instanceof Array //返回true
arr1.toString(); //输出name,age,title 直接转为字符串
arr1.join("*"); //指定字符,拼接为一个字符串
arr1.splice(0,1); // 0要删除的元素位置,1删除个数
arr1.concat(arr2); //拼接 2个数组 参数可以是多个(arr3,arr4),即为拼接多个数组
Math.max.apply(null, arr); //获取数组中最大值
Math.min.apply(null, arr); //获取数组中的最小值
其他更多常用操作方法整理
BOM(浏览器操作)