typeof:查询数值当前类型,返回 string / number / boolean / object
例如:typeof(“test”+3)==“string”
null & undefined
null 在程序中代表“无值”或者“无对象”
可以通过给一个变量赋值 null 来清除变量的内容
undefined
声明了变量但从未赋值或者对象属性不存在
算术运算
加(+)、 减(-)、 乘( * ) 、除( / ) 、取余( % )
- 可以表示减号,也可以表示负号,如:x = -y
+可以表示加法,也可以用于字符串的连接
递增( ++ ) 、递减( – ),同Java
i++ 相当于 i=i+1
i-- 相当于 i=i-1
关系运算
严格相等:===
类型、数据都相同
非严格相等:!==
逻辑运算
逻辑非(!)、逻辑与(&&)、逻辑或(||)
逻辑运算的操作数均为 boolean 表达式
控制语句
同Java
常用字符串API
length:获取字符串的长度(字符串中字符的个数) 属性,没有小括号
toUpperCase/toLowerCase:转换大小写
charAt(下标):返回某个下标上的字符
indexof(字符):查找字符串中字符出现的首次下标
lastIndexof(字符):查找字符串中字符最后一次出现的下标
substring(开始,结束):截取字符串中一部分(不包含结束)
replace(旧的,新的):将字符串中的旧字符替换成新字符
split(分割的节点):一个字符串切割成N个小字符串,所以返回的是数组类型
<script>
// 获取字符串长度
var str = "hello";
console.log(str.length);
// 转换大小写
var name = "AngierSun";
console.log("大写:" + name.toUpperCase());
console.log("小写:" + name.toLowerCase());
// 返回某个下标上的字符
var str1 = "javascript网页教程";
var str2 = str1.charAt(12); // 下标12上的字符
console.log(str2); // "教"
var str3 = str1.charCodeAt(12);
console.log(str3); // 25945:(汉字“教”在unicode编码中的编号)
// 根据字符查找对应下标
var str1 = "javascript网页教程";
var str2 = str1.indexOf("a"); // a字符在str1中第一次出现的下标
console.log(str2);
var str3 = str1.lastIndexOf("a"); // a字符在str1中最后一次出现的下标
console.log(str3);
// 截取字符串
var str1 = "abcdefgh";
var str2 = str1.substring(2, 4);
console.log(str2); // cd,从2开始(包含),4结束(不包含)
// 替换字符
var str1 = "abcde";
var str2 = str1.replace("cd", "XXX");
console.log(str2); // abXXXe,将str1中的cd替换成XXX
// 切割字符串,返回数组类型
var str1 = "一,二,三,四,五";
var arr = str1.split(","); // 将str1以逗号进行分割,分割成N份,返回一个数组
console.log("共分割成:" + arr.length + "份");
console.log("第三份是:" + arr[2]); // "三"
</script>
数组
初始化数组的三种方式
<script>
// 第一种
var arr1 = new Array();
arr1[0] = 110;
arr1[1] = 119;
arr1[2] = 120;
// 第二种
var arr1 = new Array(10, "a", true);
// 第三种
var arr1 = [10, "a", true];
</script>
数组的常用方法
tostring():将数组转换成字符
join(连接符号):将数组中的每个元素用连接符号连接成一个新的字符串。
concat(新元素):在原数组的末尾添加新元素,生成一个新数组,原数组不变。
slice(开始,结束):在数组中截取一部分,形成新的数组。(含开始,不含结束)
reverse():将数组反转(倒序)
sort():数组排序
arr.sort() 字符排序
arr.sort(func) 按自定义的func函数进行排序
// 按照数值大小进行排序
function func(a,b) {
return a-b;
}
Math数学对象
Math 对象用于执行数学任务
没有构造函数 Math()
无需创建,直接把 Math 作为对象使用就可以调用其所有属性和方法
number对象
Number.fixed(n):精确到小数点后n位(四舍五入)
正则表达式
此处建议面向百度编程
日期对象
<script>
var time = new Date();
console.log(time); // Tue Jul 14 2020 11:09:46 GMT+0800 (中国标准时间)
var year = time.getFullYear(); // 年
var month = time.getMonth() + 1; // 月(从0开始,11结束,所以国内习惯要+1)
var day = time.getDate(); // 日
var hour = time.getHours(); // 时
var m = time.getMinutes(); // 分
var s = time.getSeconds(); // 秒
var ms = time.getMilliseconds(); // 毫秒(1000毫秒 = 1秒)
var timestr = year + "年" + month + "月" + day + "号 " + hour + "点" + mm + "分" + s + "秒" + ms + "毫秒";
console.log(timestr);
</script>