javascript基础篇
JavaScript基本类型:
Number,String,Object,Bolean,Null,Undefined
| 原始类型 | Number,String,Bolean,Null,Undefined |
| 引用类型 | Object |
类型识别:
- typeof;可以识别标准类型;不可以识别具体的对象类型(除了Function类型)
- instanceOf:可以识别所有的对象类型(Array,RegExp),不可识别所有的原始类型;
- Object.protype.toString.call()可以识别标准类型以及所有内置对象类型,不能识别自定义对象类型
- constructor:可以判别自定义对象类型和内置对象类型 和 标准类型(null和undefined除外)
function type(obg){ return Object.protype.toString.call(obj).slice(8,-1) } function getConstructorName(obg){ return obg && obj.constructor && obg.constructor.toString().match(/function\s*([^(]*)/)[1]; }
弱类型:在定义数据的时候不需要对类型进行限制,允许不同类型的数据进行运算。缺点:代码的健壮性比较低,另外执行效率也比较低。优点:操作方便,动态语言
强类型:在定义数据的时候需要对类型进行限制,不允许不同类型数据间的运算。缺点:只能和兼容类型进行运算和操作。优点:执行效率高
出现隐式转换的场景:
- if
- .
- ==
- 使用运算符的时候
运算符
一元操作符:age++ 与++age的区别;--
算数操作符:+,-,*,/,%
关系操作符:>,>=,<,<=
相等操作符:==,!= ===,!=== // ==会进行类型转换number与string比较 string会被转化为number之后再比较,number与boolean比较boolean会被转为number再进行比较,
逻辑操作符:!,&&,||
赋值操作符:=//
条件操作符:?://布尔表达式? 表达式一:表达式二;
逗号操作符:,
对象操作符:new,delete,.,[],instanceof,in //instanceof判断某个变量是否是某个对象的实例,in判断 某个属性 是否在某个对象中
位操作符:
关于隐式类型转换,可参阅js隐式类型转换(详细)
语句:
条件:if ,switch
循环:for ,while ,do..while,for in//for(属性名)in(对象){}
with(kitty.friend){
document.write(name+'\'s age is'+age )
}
Math方法:
JSON:
JSON.parse()
JSON.stringfy()

浙公网安备 33010602011771号