JavaScript入门

JavaScript介绍

JavaScript是一种web脚本语言,具有弱类型、跨平台等特性。

JavaScript的标识符一定要注意大小写,因为js对大小写敏感

JavaScript的数据类型

Undefined类型:出现场景已声明但未赋值的变量,获取对象不存在的属性

Null类型:值null,表示不存在

Number:整数,浮点数

String:字符组成的文本

Boolean:true,false等2个特定的值

Object:一组无序的键值对的集合

常用内置对象

字符串

str.length()返回字符串的长度

str.slice()从原字符串取出子 字符串并返回,不改变原字符串的值

str.trim()去除字符串两端的空格(\t,\v),(\n),(\r)

str.indexOf()用于确定一个字符串在另一个字符串的位置

str.toLowerCase()转换为小写

str.toUpperCase()转换为大写

str.split()按照给定规则分隔字符串,返回一个由分割出来的字符串组成的数组

对象(Object)

创建对象

var obj1 = {};

var obj2 = new Object();

var obj = {
    name:"john",
    age:12,
    getAge:function(){
        console.log('age');
    }
};
obj.address = 'china';
obj.getAge = function(){};
delete obj.address; -- 删除对象的属性

 数组

var arr = [1,2,true,'john'];

arr.push() -- 在数组末端添加进一个或多个元素,并返回添加新元素后的数组长度,该方法会改变原数组

arr.pop() -- 删除数组最后一个元素,并返回该元素,改变原数组

arr.join() -- 以参数作为分隔符,将所有的数组成员组成一个字符串返回

arr.shift() -- 用于删除数组的第一个元素,并返回该元素

arr.unshift() -- 在数组的第一个位置添加元素

遍历数组

var a = [1,2,3,4];
for(var i in a){
    console.log(a[i]);
}

 函数(Function)

声明函数

function print(s){
    console.log(s);
}
var print = function(s){
    console.log(s);
}

 变量表达式声明函数,必须放在函数调用之前,否则js引擎会找不到该函数

函数调用:print(5);

数学对象(Math)

Math.abs() -- 返回参数值的绝对值

Math.min()

Math.max()

Math.floor() -- 向下取整

Math.ceil() -- 向上取整

Math.round()-- 四舍五入

Math.random() -- 返回 [ 0 , 1 ) 区间内的值

Math的三角函数等

--返回[2,6]区间内的随机数
function getRandom(min,max){ var random = Math.random() * (max-min) + min; return Math.round(random); } var random = getRandom(2,6); console.log(random);

 JSON

json格式是一种用于数据交换的文本格式

json格式描述的文件,本身是个字符串,并非对象,所以从后端传到前端需要格式转换

json格式规则:

  1. 复合类型的值只能是数组或对象,不能是函数、正则表达式对象、日期对象
  2. 简单类型的值只有4种:字符串、数值(必须以十进制表示)、布尔值和Null(不能使用NaN,Infinify,-Infinify和undefined)
  3. 字符串必须使用双引号表示,不能使用单引号
  4. 对象的键名必须放在双引号里面
  5. 数组或对象最后一个成员的后面,不能有逗号
  6. 数值前不能加0

json对象:用于对json进行解析和序列化

JSON.parse() -- 此方法接收一个JSON字符串,返回解析后的JavaScript对象,通常为Object或Array

JSON.stringify() -- 此方法可接收一个JavaScript值转化为JSON字符串,此字符串可被JSON.parse()还原

正则表达式

一种表达文本模式的方法

新建正则   var telRegex = /^1[[3578]\d{9}$/;

正则元字符

帮助文档

正则对象方法

test() -- 测试是否符合正则表达式,返回值为Boolean

exec()

闭包和变量作用域

JS有两种作用域:全局作用域和函数作用域,没有块级作用域

闭包:只有函数内部的子函数才能读取内部变量

闭包最大特点:'记住'诞生的权限

闭包的两个最大作用:

  1. 读取函数内部的变量
  2. 封装对象的私有属性和私有方法

JS的运算符,严格相等===和相等==

严格相等要求类型一样,比较过程不执行类型转换,推荐使用严格相等(===)

 

JavaScript标准参考教程

posted @ 2018-07-08 09:46  做个有追求的程序猿  阅读(122)  评论(0编辑  收藏  举报