类型转换和方法
JSON相关
JSON转String
一般用于存储信息,例如localstorage
js
var jsonObject = { "name": "John", "age": 30, "city": "New York" };
var jsonString = JSON.stringify(jsonObject);String转JSON
js
var jsonString = '{"name": "John", "age": 30, "city": "New York"}';
var jsonObject = JSON.parse(jsonString);JSON.stringify方法和JSON.parse方法也可以转换数组
Number相关
浮点转整数
js
var floatNumber = 3.6;
// 四舍五入方法
var roundedIntNumber = Math.round(floatNumber); // 3
// 保留整数方法
var intNumber = Math.floor(floatNumber); // 4
var floatNumber = 3.1;
// 向上取整
intNumber = Math.ceil(floatNumber); // 4生成随机数
js
console.log(Math.random());
// 生成一个0~1(不包含1)的随机数,浮点类型如果要生成范围内的随机数
js
var max=100;
console.log(Math.random()*max);
// 生成一个0~100(不含100)的随机数,浮点类型
console.log(Math.floor(Math.random()*max));
// 生成一个0~100(不含100)的随机数,整数类型
console.log(Math.random()*max+100);
// 生成一个100~200(不含200)的随机数,浮点类型保留固定长度小数
js
var a=3.14159;
console.log(a.toFixed(2)); // 输出3.14Number转String
js
var a=3.14;
console.log("PI="+(a.toString()+15)); // 输出PI=3.1415,四舍五入一些常用的数
Math.E:自然对数的底数eMath.PI:圆周率
常用方法
Math.abs(x):绝对值Math.max(array):取最大值Math.min(array):取最小值Math.round(x):将一个数四舍五入到整数Math.floor(x):将一个数向下取整Math.ceil(x):将一个数向上取整
String相关
String转Number
js
var str="123";
var num = parseInt(str); // 存储为整数123js
var str = "3.14";
var num = parseFloat(str); // 存储为浮点数字3.14js
var floatNumber = 3.9;
var intNumber = parseInt(floatNumber); // 注意,这样会向下取整,存储为整数3js
var str = "42.42";
var num = Number(str); // 存储为浮点数字42.42注意,上面所有方法都会忽略非数字部分
js
var str="123你好";
console.log(parseInt(str)); // 输出123注意如果开头不是数字会返回NaN
js
var str="你好123";
console.log(parseInt(str)); // 输出NaN因此建议使用以下方法防止出错:
js
var str = "Hello123";
var num = parseFloat(str);
if (!isNaN(num)) {
console.log("转换成功: " + num);
} else {
console.log("无法转换为数字");
}常用方法
String.at(x):返回字符串的某一位,从0开始,可以使用-表示从最后一位开始String.concat(s1, s2):返回两个字符串连接起来得到的新字符串String.endsWith(s):返回字符串是否以字符(串)s为结尾,true&falseString.includes(s):返回字符串是否包含字符(串)s,true&falseString.indexOf(s):返回字符串中,字符(串)s所在的位置索引值(从头开始第一次遇到的位置)String.repeat(x):返回字符串重复了x次String.replace(s1, s2):返回新字符串,将原字符串中第一个s1字符(串)替换成s2String.replaceAll(s1, s2):返回新字符串,将原字符串中所有的s1字符(串)替换成s2String.slice(x1, x2):返回字符串截取从索引x1到索引x2的字符串String.startsWith(s):返回字符串是否以字符(串)s为开头,true&falseString.substring(x1, x2):返回字符串截取从索引x1到索引x2的字符串String.toLowerCase():返回全部小写的字符串String.toUpperCase():返回全部大写的字符串
slice()和substring()方法区别
substring()对所有的负数均视为0,而slice()则理解为倒数的几位字符substring()可以自动颠倒顺序,因此不存在start和end区分,而slice()严格遵循,如果顺序颠倒会返回空字符串