JavaScript基础总结 (2)

如果函数前面没有对象.,就是window在调用

原型 获取对象的原型 ①隐式方式获取原型 对象.__proto__ ②显示方式获取原型 对象的构造函数.prototype 原型的应用 // 自定义构造函数 function User(name, age, address) { // 属性 this.name = name; this.age = age; this.address = address; } // 把方法添加到实例的原型上 User.prototype.login = function(){ console.log(this.name + \' 登录了\'); } User.prototype.logout = function() { console.log(this.name + \' 退出登录了\'); }

方法添加到原型上减少实例的占用的内存

判断属性是否属于对象本身 对象.hasOwnProperty(\'属性名\') //返回布尔值 /* 如果属性在对象本身则返回true 对象不存在该属性或者属性属于原型都返回false */ 创建对象的时候同时指定原型 Object.create(参数对象); //返回一个新的对象,参数会作为新对象的原型 Object.create(null); //返回一个没有原型的对象,真正意义的空对象 原始类型和引用类型

原始类型就是值类型,又叫不可变类型

对象类型就是引用类型,又称可变类型

值类型和引用类型的存储方式

值类型:变量名和数据都存储在栈区域

引用类型:栈中存储的是变量名和地址,真正的数据存储在数据堆里

内置对象 1 Boolean //第一种 直接量方式 var b1=true; //第二种 Boolean函数 var b2=Boolean(true); //第三种Boolean构造函数方式 var b3=new Object(0); console.log(b1, typeof b1); // true \'boolean\' console.log(b2, typeof b2); // true \'boolan\' console.log(b3, typeof b3); // false \'object\' // 布尔值的对象形式 2 Number 实例的方法: toFixed([n]); //保留指定的n位小数, 按照四舍五入;不指定参数则取整 toString([n]); //转换为字符串。可以控制进制(转换前的进制转换为10进制) 构造函数的属性: Number.MAX_VALUE Number.MIN_VALUE 3 String 实例的属性: length 字符串的长度 实例的方法: indexOf(value [,fromeIndex])返回value在字符串中第一次出现的索引位置;第二个可选参数指定从哪开始查找。 可以用来判断字符串中是否包含某个值。 lastIndexOf(value [,fromIndex]) 返回value在字符串中最后一次出现的索引位置;第二个可选参数指定从哪开始向前查找。 slice(start [,end]) 字符串截取,第一个参数是开始位置,第二个参数不写则代表截取到最后 substring() 字符串截取,同slice()方法 substr(start [,length]) 字符串截取,第二个参数表示截取长度 split([sep]) 字符串分割为数组;可以指定分隔符 toUpperCase() 把字母转换为大写 toLowerCase() 把字母转换为小写 charCodeAt() 把字母转换为Unicode编码 构造函数本身的的方法: string.fromCharCode(编码); 返回指定的Unicode编码对应的字符; 4Math 属性: Math.PI 方法: Math.abs() 取绝对值 Math.sqrt() 取平方根 Math.pow(n,m) 幂运算n的m次幂 Math.max() 取所有参数中的最大值 Math.min() 取所有参数的最小值 Math.round() 四舍五入取整 Math.floor() 向下取整 Math.ceil() 向上取整 Math.random() 获得一个[0,1)的随机小数 5 Date 创建Date实例 var today=new Date(); //当前时间日期 var birthday= new Date(\'December 17,1995 03:24:00\'); var birthday=new Date(\'1995-12-17T03:24:00\'); var birthday=new Date(1995,11,17); var borthday=new Date(1995,11,17,3,24,0)

注意:用最后两种格式最简单,但是要注意月份是从0开始,应该减一。

方法 实例的方法: getFullYear() 年 getMonth() 月 从0开始 getDate() 日 getDay() 周几 getHours() 小时 getMinutes() 分钟 getSeconds() 秒 getMilliseconds() 毫秒 getUTC...系列 获取标准时区的日期和时间 set.... 设置日期和时间 setUTC... 设置标准时区日期和时间 getTime() 返回时间戳 setTime() 根据时间戳设置日期时间 构造函数本身的方法: Date.now(); 返回此刻时间戳 Date.UTC(year,month[,date[,hrs[,min[,sec[,ms]]]]]) 返回指定日期的时间戳 6 Array 实例的属性: length 数组的长度 实例的方法: 修改器方法:(可以修改调用方法的对象) pop() 删除最后一个元素 push() 在最后添加元素(可以是多个) shift() 删除第一个元素 unshift() 在最前面添加元素(可以是多个) splice() 添加删除替换数组 sort() 数组排序 reverse() 数组翻转 访问方法:(不会修改调用方法的对象本身,计算结果以返回值的形式得到) concat() 连接数组 slice() 截取数组 join() 将数组合并成字符串,可以指定分隔符,是split()方法的逆运算 7 Function 实例的属性: length 返回函数的必须的参数的数量 实例的方法: call() 调用函数并设置this指向,参数量不固定(至少一个) apply() 调用函数并设置函数内的this指向,参数是两个,第二个参数是形参组成的数组 bind() 设置函数this指向,把修改了this指向的函数返回;参数形式同call 8 Json 方法: JSON.parse() 把json格式字符串解析为数组或对象 JSON.stringify() 把对象或数组转换为json字符串 BOM 1 window 属性: name 获取或者设置窗口的名字 window.innerWidth 获取视口的宽度 window.innerHeight 获取视口的高度(包含滚动条宽度,不推荐) history location screen navigator 方法: alert(); confirm() 确认框 prompt() 输入框 window.open() 打开新窗口 window.close() 关闭窗口 window.print() 调用打印程序 scrollTo() 滚动到指定位置 scrollBy() 滚动多少距离 setInterval() 设置多次定时器 clearInterval() 清除多次定时器 setTimeout() 开启单次定时器 clearTimeout() 清除单词定时器 2 history 属性: length 当前窗口中的历史记录个数 方法: back() 后退一步 forward() 前进一步 go(n) 前进/后退n步 附属表示后退 3 location 属性: href 完整的URL protocol 协议部分 host 主机名+端口号 hostname 主机名 port 端口号 path 路径部分 search 查询字符串 hash 锚点部分 方法: reload() 重新加载 assign(URL) 页面跳转,旧页面会存在历史记录中 replace(URL) 页面跳转,旧页面会被抹除 4 navigator 属性: userAgent 获取客户端信息 5 screen 属性: width 屏幕的宽度 height 屏幕的高度 DOM

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwwwxd.html