字面量, 也就是某个常量值在程序代码中的表示方法.
例如:
1 // 10进制
0xff // 0x开头, 16进制
061 //0打头, 8进制
"Lily"
"myName \\n 666 \n test"
字符串字面量
"Lily"
字符串长度
"Lily".length
简单算数运算
3+4
或者
2*8
+
6/7
未定义的变量
anywords222
提示如下:
Uncaught ReferenceError: anywords222 is not defined
JS 补零
var num = 3.14;
var num0 = num.toFixed(0); // "3"
var num4 = num.toFixed(4); // "3.1400"
数字取整
var num1 = 3.14;
var i1 = num1 | 0; // 3
var i2 = 0 | num1; // 3
Math.round(num1); // 3
Math.round(3.5); // 4; 四舍五入
Math.round(num1 * 10) / 10; // 3.1; 保留1位小数
num1.toFixed(1); // "3.1" // 字符串
Math.floor(num1); // 3; 向下取整, floor=地板
Math.floor(-1 * num1); // -4;
Math.ceil(num1); // 4; 向上取整, ceil=天花板
Math.ceil(-1 * num1); // -3
日期转时间戳:
var d1 = new Date(); // Wed Nov 29 2017 13:53:04 GMT+0800 (中国标准时间)
var timeMillis = d1/1; // 1511934784153
var time2=d1.getTime(); // 1511934784153
判断日期类型
typeof d1; //"object"
typeof(d1); //"object"
d1.constructor===Date; // true
eval作用域:
i = 8;
(function(){
var i = 6;
eval("console.log('i='+i)"); //输出 i=6
eval("console.log('this.i='+this.i)"); //输出 this.i=8
})()
函数
函数定义:
function say(name){
// 各种计算逻辑
console.log("myname is :", name);
};
函数调用:
say("tiemao"); // myname is : tiemao
函数声明之后, 具有变量名不可以被删除的属性:
delete say; //false
即使赋予其他值,该标识符依然不可删除:
say = 1;
delete say; //false
定义普通变量:
yourname = 'csdn'
然后执行:
delete yourname; // true
console.log(yourname); // 报错: Uncaught ReferenceError: yourname is not defined
但是将匿名函数赋值之后,是可以删除的:
sayName = function (name){
// 各种计算逻辑
console.log("myname is :", name);
};
函数调用:
sayName("tiemao"); // myname is : tiemao
删除变量
delete sayName; //false
sayName("1"); // 报错: Uncaught ReferenceError: sayName is not defined
本质上是普通的属性域:
window.msg1 = "666"; // "666"
delete window.msg1; // true
console.dir(window.msg1); // undefined
但是用 var 声明的全局变量, 不可以删除
var msg3 = "333";
delete window.msg3; // false
delete msg3; // false
console.dir(window.msg3); // 333
匿名函数直接调用:
win = {id : '666'};
(function(window){console.dir(window)})(win);
(function(window, $){console.dir($)})(win, win);
相当于函数内部的形参,由外部控制