JavaScript入门介绍
【经常使用的调试工具】
【w3school.com.cn在线编辑】
【Chrome浏览器 开发调试工具】按F12
1、代码后台输出调试:console.log("text");
2、 console输出台直接输代码调试
[语法]
标示符Names
数据类型data type
- number 数字 :64位浮点数(double,只有一种)
- string 字符串 :16位字符组成(单双引号表示)
- boolean 不二类型
- undefined
- function
- object
语句Statements
语句的执行顺序自上而下,可以通过下面的方法来改变
条件语句
if else
switch case default
循环语句
while
for
do
try catch throw
强制跳转语句
break
return
throw
函数调用
表达式Expressions
运算符优先级
.[]() 提取属性与调用函数
delete new typeof + - ! 一元运算符
* / %
+ -
>= <= > <
=== !===
&& 逻辑与
|| 逻辑与
?: 三元
字面量Literals
{
name : string,
name2 : number,
name3 : object,
name4 : array,
name5 : function,
name6 : regexp
}
函数function
[对象]
对象Object
var stooge = {
"first":"name1",
"secound":"name2"
}
检索Retrieval
优先选择.表达式
[]
.
- 当字符串是一个字符串字面量,
- 而且是合法的标示符不是保留字时可以使用
更新update
即赋值或更改值
=
引用Reference
var x = stooge;
x,nickname = 'Curly',
var nick = stooge.nickname;
//nick值为Curly
原型Prototype
每个对象都连接到一个原型对象,并且可以从中继承属性。
所有通过字面量创建的对象都连接到Object.prototype。
反射Reflection
typeof //typeof X;
hasOwnProperty //flight.hasOwnProperty('number');
in //"name" in flight;
hasOwnProperty不会检查原型链,只返回对象是否有该属性
in只要原型和对象某一个有该属性就返回true
确定原型是否具有该属性:
function hasPropertypeProperty(object,name){
return !object.hasOwnProperty(name)&&(name in object);
}
枚举Enumeration
for in / for
var name;
for(name in stooge){
if(typeof stooge[name] !== 'function'){
document.writeln(name + ':' + another_stooge[name]);
}
}
//上面输出的顺序不确定
var properties = [
'first',
'secound'
];
for(var i=0 ;i <properties.length;i += 1){
document.writeln(stooge[properties[i]]);
}
删除Delete
delete //delete stooge.first;
减少全局变量污染 Global Abatement
全局变量消弱程序的灵活性。
方法一:创建一个唯一的全局变量。
var MYAPP = {};
该变量此时变成了你的应用容器。
MYAPP.stooge = {
"first":"name"
}
MYAPP.flight = {
"other":"name1"
}
方法二:闭包来进行信息影藏。