*js里的数据类型:
var length = 16; // Number 通过数字字面量赋值
var points = x * 10; // Number 通过表达式字面量赋值
var lastName = "Johnson"; // String 通过字符串字面量赋值
var cars = ["Saab", "Volvo", "BMW"]; // Array 通过数组字面量赋值
var person = {firstName:"John", lastName:"Doe"}; // Object 通过对象字面量赋值
*JavaScript 对大小写是敏感的
*JavaScript 使用 Unicode 字符集
*值类型:不可改变的原始值(栈数据) Number,String,Boolean,undefined,null,Symbol(Symbol 是 ES6 引入了一种新的原始数据类型,表示独一无二的值。)
引用数据类型:(堆数据) array, object, function
*语句后面要用分号结束“;” js语法错误会引发后续代码终止,但不会影响其它js代码块 书写格式要规范,“= + / -”两边都应该有空格
*运算操作符 “+” 1.数学运算、字符串链接 2.任何数据类型加字符串都等于字符串 “-”,“*”,“/“,“%”,”=“,“()” 优先级”=“最弱,”()”优先级较高 “++”,“- -”,”+=“,“-=”,“/=“,“*=”,“%=”
*浏览器按照编写顺序依次执行每条语句
*JavaScript 会忽略多余的空格
*可以在文本字符串中使用反斜杠对代码行进行换行
document.write("你好
世界!");
*js中的注释跟java中一样,单行注释// 多行注释/* */
*var 声明变量后未赋值,默认为undefined
*重复声明 值不会丢失
var carname="Volvo";
var carname;
值还是Volvo
*JavaScript 拥有动态类型。这意味着相同的变量可用作不同的类型
var x; // x 为 undefined
var x = 5; // 现在 x 为数字
var x = "John"; // 现在 x 为字符串
*数组的创建赋值
1.var cars=new Array();
cars[0]="Saab";
cars[1]="Volvo";
cars[2]="BMW";
2.var cars=new Array("Saab","Volvo","BMW");
3.var cars=["Saab","Volvo","BMW"];
*对象由花括号分隔。在括号内部,对象的属性以名称和值对的形式 (name : value) 来定义。属性由逗号分隔
对象属性有两种寻址方式:
name=person.lastname;
name=person["lastname"];
*Undefined 这个值表示变量不含有值。可以通过将变量的值设置为 null 来清空变量
*js的变量类型根据赋值确定,但也可以在声明时确定类型。当您声明新变量时,可以使用关键词 "new" 来声明其类型
var carname=new String;
var x= new Number;
var y= new Boolean;
var cars= new Array;
var person= new Object;
*JavaScript 对象是拥有属性和方法的数据
*在 JavaScript中,几乎所有的事物都是对象。
*JavaScript 对象是变量的容器。
*函数可以作为对象的属性值value存储
var person = {
firstName: "John",
lastName : "Doe",
id : 5566,
fullName : function()
{
return this.firstName + " " + this.lastName;
}
};
怎么调用上面这个函数呢?获取定义把它当一个普通字符串,person.fullName 如果调用函数只要返回结果,person.fullName()
*JavaScript 函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它
*在函数外声明的变量是全局变量,网页上的所有脚本和函数都能访问它
*JavaScript 变量的生命期从它们被声明的时间开始。
局部变量会在函数运行以后被删除。
全局变量会在页面关闭后被删除
*函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块
我们写好的函数,可以在标签中由事件来调用,也可以直接在js中随页面加载时调用。
*js时对大小写敏感
*js中函数的参数是可以不用var进行声明
**非严格模式下给未声明变量赋值创建的全局变量,是全局对象的可配置属性,可以删除。
就是不用var来声明,直接就用,比如var name去掉var,意思是使用var声明的全局变量不可以用delete删除,没用var声明的可以。
如果变量在函数内没有声明(没有使用 var 关键字),该变量为全局变量。
以下实例中 carName 在函数内,但是为全局变量。
function myFunction() { carName = "Volvo"; // carName 为全局变量 }
*在 HTML 中, 全局变量是 window 对象: 所有数据变量都属于 window 对象