JavaScript知识点巩固

1.JavaScript 总共7中type:
undefined(未定义),
null(空),
boolean(布尔型),
string(字符串),
symbol(符号),
number(数字),
object(对象)。

2.变量可以由数字、字母、$ 或者 _组成,不能包含空格或者以数字为首。所有的变量都是大小写敏感的。

3.用反斜杠 (\) 来转义,单引号 ' 里面全部转义(变为字符串)

4.字符串的不可变性。不能通过下面方法改变值:

var myStr = "Bob";
myStr[0] = "J";

需要重新对myStr整体赋值才行

 5.获取lastName的最后一个字符:

lastName[lastName.length-1]

6.

var oneDown = [146].pop(); // 取最后一位出来,现在oneDown的值为 6,数组为[1,4]
var oneDown = [146].shift(); // 取第一位出来,现在oneDown的值为 1,数组为[4,6]

push()是在末尾添加, unshift()则是添加到第一个

arr.push(item);
arr.push([5]);

7.Boolean 值绝不会写作被引号包裹起来的形式。字符串"true""false" 不是 布尔值

8. !=的相反是==,!==的相反是===

 大于小于号判断会把字符串转为数字

 7 > '3' // true

9.&& 全部为true,才是true (与)

   || 有一个为true,就是true(或)

10.return会结束myTest,  break会结束switch,break尽量不要省略;

function myTest(val) {
  switch(val){
    case 1:
    return "alpha";
      break;
     case 2:
    return  "beta";
      break;
       case 3:
    return "gamma";
      break;
       case 4:
    return "delta";  
    default:
   return "ssss"//实在没有匹配的话执行default
  }
}

11.有两种方式访问对象属性,一个是点操作符(.),一个是中括号操作符([]),如果你想访问的属性的名称有一个空格,这时只能使用中括号操作符

var myObj = {
"Space Name": "Kirk",
"More Space": "Spock"
};
myObj["Space Name"]; // Kirk
myObj['More Space']; // Spock

中括号操作符的另一个使用方式是用变量来访问一个属性: 

var Prop = "propName";
var myObj = {
propName: "Some Value"
}
myObj[Prop]; // "Some Value"
myObj["propName"];//"Some Value"
myObj.Prop;//错误
myObj.propName;//"Some Value",注意没有双引号,直接把字符串当变量写

更新对象属性的两种方式(也可以无中生有):

var ourDog = {
"name": "Camper",
"legs": 4,
"tails": 1,
"friends": ["everything!"]
};
ourDog.name = "Happy Camper";
ourDog["name"] = "Happy Camper"

删除属性:

delete ourDog.bark;

 检查属性是否存在:

.hasOwnProperty(propname)

 12.Math.random()生成一个在0(包括0)到1(不包括1)之间的随机小数

   用 Math.floor() 向下取整(0.6为0,5.1为5,-5.1为-6)

 生成两个数间的一个随机整数:

Math.floor(Math.random() * (max - min + 1)) + min

 13.正则表达式:

/the/gi

/ 是这个正则表达式的头部

the 是我们想要匹配的东西

/ 是这个正则表达式的尾部

g 代表着 global(全局),意味着返回所有的匹配而不仅仅是第一个。

i 代表着忽略大小写,意思是当我们寻找匹配的字符串的时候忽略掉字母的大小写。

 

/\d+/g

\d匹配一个数字,+表示一整个算一个

 

 /\s+/g

小写的\s匹配空白字符,空白字符有 " " (空格符)、\r (回车符)、\n (换行符)、\t (制表符) 和 \f (换页符)

大写的\S 匹配任何非空白字符

var testString = "How many non-space characters are there in this sentence?";
var expression = /\S+/g;  // 有加号,匹配到9个
var testString = "How many non-space characters are there in this sentence?";
var expression = /\S/g;  // 匹配到49个

 

 

14.构造函数:

var Bike = function() {
  var gear;  //私有属性,在外部访问时,应该保持 undefined ,即外部访问不到私有属性
  this.qqq=1;  //公有属性
  this.setGear=function(a){   //公有方法
    geara;
  }
   this.getGear=function(){
    return gear;
  }
};

15.map方法:

var timesFour = oldArray.map(function(val){
  return val * 4;
}); //使oldArray每一项乘以4,赋给timesFour。oldArray本身不改变

16.reduce方法:

var singleVal = array.reduce(function(xy) {
  return x + y;  //使array中的数逐个相加,return的值成为下一个x
}, 0);   //可选参数,用来设置累加器的初始值。如果没有在这定义初始值,那么初始值x将变成数组中的第一项,而 y 将从数组的第二项开始。

17.filter方法

var newArray = oldArray.filter(function(val){
  return val<6;  //保留小于6的数,大于或者等于6的过滤掉
});

18.sort方法:

var array = [112212];
array.sort(function(ab) {
  return a - b;
});  //把元素按照从小到大的顺序进行排列,改变原数组。若b-a则是从大到小排序

19.reverse方法

myArray.reverse();  //翻转数组

20.concat方法

newArray = oldArray.concat(concatMe); //数组拼接数组

21.split方法

array = string.split(' '); //用空格为标记分割string,变成数组

22.join方法

string =array.join(' ');  //用空格把数组拼接,变成string

 

posted @ 2017-02-15 22:10  森森森shen  阅读(218)  评论(0编辑  收藏  举报