javascript学习笔记

来源:互联网 发布:淘宝 商品 模板 编辑:程序博客网 时间:2024/05/17 05:17

3.9                       // 数字文字
"Hello!"                  // 字符串文字
false                     // 布尔文字
null                      // 文字空值
{x:1, y:2}                // 对象文字
[1,2,3]                   // 数组文字
function(x){return x*x;}  // 函数文字

var bestAge = null;
var muchTooOld = 3 * bestAge; // muchTooOld 的值为 0。因为 bestAge 为 null。
var currentCount;
var finalCount = 1 * currentCount; // finalCount 的值为 NaN,因为 currentCount 为 undefined。
注意在 JScript 中 null 和 undefined 的主要区别是 null 的操作象数字 0,而 undefined 的操作象特殊值NaN (不是一个数字)。
对 null 值和 undefined 值作比较总是相等的。
不能通过与 Number.NaN 比较来测试 NaN 结果,而应该使用 isNaN() 函数。

不用 var 关键字声明变量,并赋值。这就是隐式声明。
noStringAtAll = ""; // 隐式声明变量 noStringAtAll。不能使用未经过声明的变量。
例如 : var volume = length * width; // 错误 — length 和 width 并不存在。

任何值为0、null、未定义或空字符串的表达式被解释为 false。其他任意值的表达式解释为 true。

// 这种方法不起作用
if (x == undefined) 
// 这个方法同样不起作用- 必须检查
// 字符串 "undefined"
if (typeof(x) == undefined)
// 这个方法有效
if (typeof(x) == "undefined")
考虑将 undefined 值与null做比较。
someObject.prop == null;

要检查一个对象的属性是否存在,可以使用新的 in 运算符:
if ("prop" in someObject)

从对象中删除一个属性,或从数组中删除一个元素。
delete expression
expression 参数是一个有效的 JScript 表达式,通常是一个属性名或数组元素。

内部函数是 eval():该函数可以对以字符串形式表示的任意有效的Jscript代码求值 ,eval() 函数有一个参数,该参数就是想要求值的代码
var anExpression = "6 * 9 % 7";
var total = eval(anExpression);

var myObj = new Object();
// 添加两个 expando 属性,'name' 和 'age'
myObj.name = "Fred";
myObj.age = 42;

pasta.prototype.foodgroup = "carbohydrates"  //pasta为函数

不对一个函数调用,而对函数自身的引用时,不在函数的名称后面加圆括号;

如果变量是在函数中显式声明的 — 也就是说,如果它出现于赋值表达式的左边但没有用 var 声明 — 那么将把它创建为全局变量。

myObject.aProperty
myObject["aProperty"] // 与上面相同。
例如:
for (prop in myObject){
    window.alert("The property '" + prop + "' is " + myObject[prop]);
}

x = Math.cos(3 * Math.PI) + Math.sin(Math.LN10)
y = Math.tan(14 * Math.E)
当使用 with 语句时,代码变得更短且更易读:
with (Math){
   x = cos(3 * PI) + sin (LN10) 
   y = tan(14 * E)
}

原创粉丝点击