有两种方式访问对象属性,一个是点操作符(.),一个是中括号操作符([])。
当知道属性的名称的时候,使用点操作符
var myObj = { prop1:"val1", prop2:"val2" }; var prop1val = myObj.prop1; //val1 var prop2val = myObj.prop2; //val2如果你想访问的属性的名称里有一个空格,只能使用中括号操作符。
var myObj = { "Space Name":"Kirk", "More Space":"Spock" }; myObj["Space Name"]; // kirk myObj["More Space"]; // SpockPS:属性名称中如果有空格,必须把属性名称用单引号或双引号包裹起来。
访问嵌套数组
var myPlants = [ { type: "flowers", list: [ "rose", "tulip", "dandelion" ] }, { type: "trees", list: [ "fir", "pine", "birch" ] } ]; // 请只修改这条注释以下的代码 var secondTree = myPlants[1].list[1];使用.hasOwnProperty(propname),如果有返回true,没有返回false。 举例
var myObj = { top: "hat", bottom: "pants" }; myObj.hasOwnProperty("top"); // true myObj.hasOwnProperty("middle"); // false步骤
用 Math.random() 生成一个随机小数。把这个随机小数乘以 20。用 Math.floor() 向下取整 获得它最近的整数。记住 Math.random() 永远不会返回 1。同时因为我们是在用 Math.floor() 向下取整,所以最终我们获得的结果不可能有 20。这确保了我们获得了一个在0到19之间的整数。 把操作连缀起来,代码类似于下面: Math.floor(Math.random() * 20); 我们先调用 Math.random(),把它的结果乘以20,然后把上一步的结果传给 Math.floor(),最终通过向下取整获得最近的整数。
生成两个指定的数之间的随机数 我们需要定义一个最小值和一个最大值。 Math.floor(Math.random() * (max - min + 1)) + min举例: 如果我们想要找到字符串The dog chased the cat中单词 the,我们可以使用下面的正则表达式:/the/gi 我们可以把这个正则表达式分成几段:
/ 是这个正则表达式的头部the 是我们想要匹配的模式/ 是这个正则表达式的尾部g 代表着 global(全局),意味着返回所有的匹配而不仅仅是第一个。i 代表着忽略大小写,意思是当我们寻找匹配的字符串的时候忽略掉字母的大小写。数字选择器 在JavaScript中, 数字选择器类似于: /\d/g。在选择器后面添加一个加号标记(+),例如:/\d+/g,它允许这个正则表达式匹配一个或更多数字。尾部的g是’global’的简写,意思是允许这个正则表达式 找到所有的匹配而不是仅仅找到第一个匹配。空白正则表达式
/\s+/g空白字符有 ” ” (空格符)、\r (回车符)、\n (换行符)、\t (制表符) 和 \f (换页符)。\s 匹配任何空白字符,\S 匹配任何非空白字符。
我们可以利用构造函数来创建对象。构造函数常使用大写字母开头,以便把自己和其他普通函数区别开。
var Car = function(){ this.wheels = 4; this.engines = 1; this.seats = 1; }在 构造函数 中, this 指向被此 构造函数 创建出来的 对象 。所以,当我们在 构造函数 中写: this.wheels = 4; 这时,它创建出来的新对象将带有 wheels 属性,并且赋值为 4.