JavaScript 使用 Unicode 字符集。
JavaScript 中的所有数据都是以 64 位浮点型数据(float) 来存储。所有的编程语言,包括 JavaScript,对浮点型数据的精确度都很难确定。
5种数据类型:
3中对象类型:
2个不包含任何值的数据类型
值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol(Symbol 是 ES6 引入了一种新的原始数据类型,表示独一无二的值。)。
引用数据类型:对象(Object)、数组(Array)、函数(Function)。
typeof undefined // undefined
typeof null // object
null === undefined // false
null == undefined // true
检测对象是否存在:
if(typeof myObj!==undefinded && myObj!==null)
typeof
检测变量的数据类型。返回值是字符串。只能返回基础数据类型:string,number,Boolean,undefined,function,object。
**constructor **
constructor 属性返回所有 JavaScript 变量的构造函数。
变量用于存储数据值。变量是一个名称。
在函数外声明的变量是全局变量,网页上的所有脚本和函数都能访问它。全局变量会在页面关闭后被删除。
在 JavaScript 函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它。(该变量的作用域是局部的)。您可以在不同的函数中使用名称相同的局部变量,因为只有声明过该变量的函数才能识别出该变量。
只要函数运行完毕,本地变量就会被删除。
变量生命周期:
JavaScript 变量的生命期从它们被声明的时间开始。
局部变量会在函数运行以后被删除。
全局变量会在页面关闭后被删除。
JavaScript 可以通过不同的方式来输出数据:
在编程语言中,一般固定值称为字面量。
变量用于存储数据值。变量是一个名称。字面量是一个值。
switch 语句会使用恒等计算符(===)进行比较:
var x = 10;
switch(x) {
case "10": alert("Hello");//不会会执行这段代码
}
//---------
var x = 10;
switch(x) {
case 10: alert("Hello");//会执行这段代码
}
break 语句用于跳出循环。break 语句跳出循环后,会继续执行该循环之后的代码(如果有的话)
continue 用于跳过循环中的一个迭代。continue 语句中断循环中的迭代,如果出现了指定的条件,然后继续循环中的下一个迭代。
return用于返回, 在代码块最后一行。JavaScript 默认是在代码的最后一行自动结束。
function myFunction(a) {
var
power = 10;
return a * power;
}
//---------------
function myFunction(a) {
var
power = 10;
return //等价于return;
a * power;
}
//返回undefined
变量提升:函数声明和变量声明总是会被解释器悄悄地被"提升"到方法体的最顶部。
JavaScript 初始化不会提升:
var x = 5; // 初始化 x
var y = 7; // 初始化 y
elem = document.getElementById("demo"); // 查找元素
elem.innerHTML = x + " " + y; // 显示 x 和 y
//-----------------------
var x = 5; // 初始化 x
elem = document.getElementById("demo"); // 查找元素
elem.innerHTML = x + " " + y; // 显示 x 和 y yundefined
var y = 7; // 初始化 y
// y 输出了 undefined,这是因为变量声明 (var y) 提升了,但是初始化(y = 7) 并不会提升,所以 y 变量是一个未定义的变量。
待补充。。。
待补充。。。
使用 JavaScript 内置函数 JSON.parse() 将字符串转换为 JavaScript 对象
JSON.stringify()将JavaScript值转换为Json字符串
void(0) 计算为 0
href="#"与href="javascript:void(0)"的区别:
#:包含了一个位置信息,默认的锚是#top 也就是网页的上端。
而javascript:void(0), 仅仅表示一个死链接。
在页面很长的时候会使用 # 来定位页面的具体位置,格式为:# + id。
如果你要定义一个死链接请使用 javascript:void(0) 。
JavaScript 变量可以是局部变量或全局变量。私有变量可以用到闭包。
闭包是可访问上一层函数作用域里变量的函数,即便上一层函数已经关闭。
未完待续。。。。。。