JavaScript      2017-04-17

1. 使用+将字符串转换成数字

这个技巧非常有用,其非常简单,可以交字符串数据转换成数字,不过其只适合用于字符串数据,否则将返回NaN,比如下面的示例:

function toNumber(strNumber) {
    return +strNumber;
}
console.log(toNumber("1234")); // 1234
console.log(toNumber("ACB")); // NaN

这个也适用于 Date,在本例中,它将返回的是时间戳数字:

console.log(+new Date()) // 1461288164385
JavaScript      2017-01-12
var a = [-1, -1, 1, 2, -2, -2, -3, -3, 3, -3];
function f(s, e) {
    var ret = [];
    for (var i in s) { // 根据原有的数组长度进行循环
        ret.push(e(s[i]));
    }
    return ret;
}
f(a, function(n) {
    return n > 0 ? n : 0
}); // 传输一个匿名函数作为逻辑判断​
JavaScript      2016-12-18

LHS和RHS的含义是"赋值操作符的左侧或右侧",并不一定意味着就是“=赋值操作符的左侧或右侧“。赋值操作还有其他几种形式,因此在概念上最好将其理解为”赋值操作的目标是谁(LHS)“以及”谁是赋值操作的源头(RHS)“。

比如下面这个例子:

function foo(a){
    console.log(a);
}
foo(2);

最后一行foo(..)函数的调用需要对foo进行RHS引用,意味着去找到”foo的值,并把它给我“。 

JavaScript      2016-12-12

使用location 对象可以通过很多方式来改变浏览器的位置。如:

location.assign("http://www.wrox.com");

或:

window.location = "http://www.wrox.com";
location.href = "http://www.wrox.com";

另外,修改location 对象的其他属性也可以改变当前加载的页面。下面的例子展示了通过将hash、search、hostname、pathname 和port 属性设置为新值来改变URL。

JavaScript      2016-12-07

函数声明与函数表达式

函数声明长这样:

function sum(num1, num2){
    return num1 + num2;
}

函数表达式长这样:

var sum = function(num1, num2){
    return num1 + num2;
};