JavaScript总结
来源:程序员人生 发布时间:2016-06-22 15:35:05 阅读次数:4419次
JavaScript 是1种面向对象的动态语言,它包括类型、运算符、标准内置( built-in)对象和方法。它的语法来源于 Java 和 C,所以这两种语言的许多语法特性一样适用于 JavaScript。需要注意的1个主要区分是 JavaScript 不支持类,类这1概念在 JavaScript 通过对象原型(object prototype)得到延续(有关 ES6 类的内容参考这里Classes)。另外一个主要区分是
JavaScript 中的函数也是对象,JavaScript 允许函数在包括可履行代码的同时,能像其他对象1样被传递。
-
Number(数字)
-
String(字符串)
-
Boolean(布尔)
-
Symbol(符号)(第6版新增)
-
Object(对象) Function(函数)
-
Array(数组)
-
Date(日期)
-
Math(数学对象)
-
RegExp(正则表达式)
-
Null(空)
-
Undefined(未定义)
-
Error(毛病)类型
1 、number详解
Javascript中采取全浮点计算(双精读64位)
注意 !在某些运算中会出错 eg:0.1 + 0.2 = 0.30000000000000004
我们也能够使用JavaScript提供的Math内置对象,和 内置函数parseInt();
另外JavaScript还提供了parseFloat(),但是它只支持解析10进制数字
在parseInto("123",10) //123 -->10的含义是10进制
parseInt("010", 10); //10
parseInt("010"); // 8 如果没有第2个参数,那末以0开头就是8进制 0x开头就是16进制
parseInt("0x10"); // 16
当第1个参数不是数字型字符串parseInt("hello", 10);
另外 还有两个特殊值 Infinity 和 -Infinity (正无穷和负无穷)
用内置函数 isFinite()可以判断1个变量是不是为Infinity -Infinity NaN
2、字符串
JavaScript中的字符串是1个Unicode字符序列
每个编码单元由1个 16 位2进制数表示。每个Unicode字符由1个或两个编码单元来表示。
"hello".charAt(0); // "h"
"hello, world".replace("hello", "goodbye"); // "goodbye, world"
"hello".toUpperCase(); // "HELLO"
"hello".length; // 5
undefined是1个未定义类型的对象(也是1个对象),它表示1个未初始化的值,也就是还没有被分配值。(JavaScript允许声明变量但不对其赋值,1个未被赋值的变量就是undefined类型)
布尔型:(true / false)其他类型对其转化
flase,0,"",NaN,null,undefined都会在JavaScript需要1个布尔值变量的时候隐式转换为false (其他的都会转化为true)
4、变量
在JavaScript中声明1个变量用var
var a;
var name = "simon";
在JavaScript中的语句块中 是没有作用域的
5、运算符
JavaScript的算术操作符包括 +、-、*、/ 和 % ——求余(与模运算不同)。赋值使用 = 运算符,另外还有1些复合运算符,如 += 和 -=,它们等价于 x = x op y。
+可以用来连接字符串
"3" + 4 + 5; // 345
3 + 4 + "5"; // 75
1 === true; //false
123 === "123"; // false
123 == "123" // true
1 == true; // true
-
if()...else if()...else()
-
while()
-
do...while()
-
for( ; ; )/for( : )
-
短路与:var name = o && o.getName();
-
短路或:var name = otherName || "default";
-
3元运算符:var allowed = (age > 18) ? "yes" : "no";
-
多重分支时可使用 基于1个数字或字符串的switch语句:(在 switch 的表达式和 case 的表达式是使用 === 严格相等运算符进行比较的:)
switch(action) {
case 'draw':
drawIt();
break;
case 'eat':
eatIt();
break;
default:
doNothing();
}
switch(1 + 3){
case 2 + 2:
yay();
break;
default:
neverhappens();
}
var obj = {
name:"carrot",
"for":"Max",
details:{
color:"orange",
size:12
}
}
obj.details.color; //orange
obj[detail][color];
function Person(name,age){
创建1个Person的对象:
var You = new Person("zhangjiahao","23");
可用var name = You.name;来取值
生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠