ES6第一篇
1 //新的数字方面的方法
const I = 3.4893589; 2 console.log(Number.parseInt(I)); 3 console.log(Number.parseFloat(I)); 4 console.log(Number.isInteger(I));//是否为整数 5 console.log(Math.trunc(I)); //去除一个数的小数部分 6 //Math.sign方法用来判断一个数到底是正数、负数、还是零。 7 var val = Math.sign(I); 8 switch (val){ 9 case -1: 10 console.log("负数"); 11 break; 12 case 1: 13 console.log("正数"); 14 break; 15 case 0: 16 console.log("零"); 17 } 18 console.log(process.versions);
字符串相关新增的方法
1 //字符串的新增的方法 2 var s = 'Hello world!'; 3 console.log(s.startsWith('Hello'));// true 4 console.log(s.endsWith('!'));// true 5 //是否包含 6 console.log(s.includes('o'));// true 7 //如果repeat的参数是负数或者Infinity,会报错。 8 var s2 = s.repeat(2); 9 console.log(s2); 10 11 // 字符串中嵌入变量 12 var name = "Bob", time = "today"; 13 function getName(){ 14 return "lee"; 15 } 16 console.log(`Hello ${name}, how are you ${time}?`); 17 console.log(`hi,my name is ${getName()}`);
解构赋值
//块级作用域的写法 { let temp = "one"; } //console.log(temp); // undefined //块级作用域之中,函数声明语句的行为类似于let,在块级作用域之外不可引用。 { function f(){console.log("test");} let a = "test"; if(true){ function f(){console.log("let's go");} } f(); } //解构赋值 var [a = 1] = []; console.log(a); //1: 解构赋值允许指定默认值 var [b = 2] = [null]; //b = null; [只有赋的值不全等于undefined时,默认值不会生效] var [c = 2] = [undefined]; //c = 2 // 对象的解构赋值 【对象的解构与数组有一个重要的不同。数组的元素是按次序排列的,
变量的取值由它的位置决定;】 // 【而对象的属性没有次序,变量必须与属性同名,才能取到正确的值。】 var d = {code: 0, message: "记住了", data: null}; var {code, message, data} = d; //两边的名称要求相互对应 console.log(code); console.log(message); console.log(data); const HTML = '<h1>测试</h1>'; console.log(HTML); //HTML = "TEST"; // //字符串的解构 var [h,e,l ,o] = 'test'; console.log(h); console.log(e); console.log(l); console.log(o); //解构赋值时,如果等号右边是数值和布尔值,则会先转为对象。 //由于undefined和null无法转为对象,所以对它们进行解构赋值,都会报错 let {toString: k} = 123; //k === Number.prototype.toString // true let {toString: n} = true; //n === Boolean.prototype.toString // true console.log(k); console.log(n);