1

1、数据类型

有七个原始数据类型:
字符串(String)、数字(Number)、布尔(Boolean)、空(Null)、未定义(Undefined)、Object、Symbol。
注1:Object包括Function,Array,Date等
注2:Symbol 是ES6中引入的一种新的基础数据类型,表示独一无二的值,最大的用法是用来定义对象的唯一属性名。
由于每一个 Symbol 的值都是不相等的,所以 Symbol 作为对象的属性名,可以保证属性不重名。
let sy = Symbol("KK");
console.log(sy);   // Symbol(KK)
typeof(sy);        // "symbol"

// 相同参数 Symbol() 返回的值不相等
let sy1 = Symbol("kk"); 
sy === sy1;       // false

2、typeof 和 instanceof

typeof 判断一个变量或表达式是什么数据类型,但会数据类型;
instanceof 判断一个构造函数的prototype属性所指向的对象是否存在另外一个要检测对象的原型链上;常用来判断一个对象是否是数组,或者判断某个变量是否是某个对象的实例时,返回true/false。

typeof

有2种使用方式:typeof(表达式)和typeof 变量名
typeof是一元运算符,用来返回操作数类型的字符串;
typeof一般只有一个实际应用场景,就是用来检测一个对象是否已经定义或者是否已经赋值;
使用typeof来获取一个变量是否存在,如if(typeof a!="undefined"){},
而不要去使用if(a)因为如果a不存在(未声明)则会出错;
typeof遇到null,数组,对象时都会返回object类型,这时要用到instanceof

instanceof

var a=new Array();    
console.log(a instanceof Array); // true
console.log(a instanceof Object); // true
instanceof 左操作数是一个类,右操作数是标识对象的类。如果左侧的对象是右侧类的实例,则返回true.

3、Error对象

抛出异常。

Error 的构造:

new Error();
new Error(message);

参数:

message:一条可选的错误消息,用于提供关于该异常的细节。

描述:

一个新构建的 Error 对象。如果指定 message 参数,则该 Error 对象将它用做它的 message 属性值。
其他情况下,它将使用一个预定于的默认字符串作为该属性的值。
当不使用 new 操作符,直接将 Error() 构造函数像一个函数一样调用时,它的行为和带 new 操作符调用时一样。
Error类实例表示的错误或异常通常配合 throw 和 try/catch 语句一起使用。

实例1:


function fun1( x ) {
     if ( x < 0 ) {
          throw new Error("x 小于 0 了");
     }
     else {
          return 1;
     }
}
fun1 (1); // 1
fun1 (-1); // 报错,Uncaught Error: x 小于 0 了
try {
     fun1( -1 );/* 抛出异常,进入catch */
} catch ( e ) {
     if ( e instanceof Error ) {
          console.log( e.name + ":" + e.message );
     }
} // 会打印:Error:x 小于 0 了

4、Console 对象

是宿主对象(也就是游览器)提供的内置对象,访问调试控制台,用于 JavaScript 调试
详细用法参考
console.log('hello');
console.info('信息');
console.error('错误');
console.warn('警告');

console.log("%d年%d月%d日",2011,3,26);// 2011年3月26日

//%o可展开的DOM,%O列出DOM的属性
// 格式成可展开的的DOM,像在开发者工具Element面板那样可展开 
console.log('%o',document.body.firstElementChild); 
// 像JS对象那样访问DOM元素,可查看DOM元素的属性 
console.log('%O',document.body.firstElementChild);

console.log("%c菜鸟教程!","color: red; font-size: 20px"); //输出红色的、20px大小的字符串:菜鸟教程,欢迎您!
等等......

老屋
173 声望4 粉丝

深圳潮汐