js实例知识汇总,js应用实例
更新:2022-11-19 08:26
本文目录一览:
1、浅谈js函数中的实例对象、类对象、局部变量(局部函数) 2、JavaScript实例和对象的区别? 3、JS基础所有知识点 4、js常见知识点--第二篇
浅谈js函数中的实例对象、类对象、局部变量(局部函数)
定义
function Person(national, age) {
this.age = age; //实例对象,每个示例不同
Person.national = national; //类对象,所用实例公用
var bb = 0; //局部变量,外面不能访问(类似局部函数)
}
调用
var p = new Person("中国", 29);
document.writeln("age:" + p.age);
document.writeln("object national:" + p.national);
document.writeln("Class national:" + Person.national);
document.writeln("local var:" + p.bb);
var p2 = new Person("美国", 31);
document.writeln("/br");
document.writeln("age:" + p2.age);
document.writeln("object national:" + p2.national);
document.writeln("Class national:" + Person.national);
document.writeln("local var:" + p2.bb);
document.writeln("/br");
document.writeln("Class national:" + Person.national);
输出结果:
//age:29
object national:undefined
Class national:中国
local var:undefined
//age:31
object national:undefined
Class national:美国
local var:undefined
//Class national:美国
以上这篇浅谈js函数中的实例对象、类对象、局部变量(局部函数)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
JavaScript实例和对象的区别?
关于js中实例和对象的解释如下: 比如定义persion如下:
var person = new Object();
var person = {};
JS 是基于原型的面向对象语言, 所有数据都可以当作对象处理,所以 person 是对象, 可以把它当作是 Object 的实例。当然, 一切都是对象。
第二个采用对象字面量的方式生成的person也是如此。
然而它内部没有调用new Object()
,而是采用JSON的初始化方式:
将现有的引用指向person。
实例和对象的区别,从定义上来讲:
1、实例是类的具象化产品,
2、而对象是一个具有多种属性的内容结构。
实例都是对象,而对象不全是实例。
Js里面没有类(ES6以前)的语法,所以类的概念就通过创造一个对象来实现。
JS基础所有知识点
元素.onmouseover
函数可以理解为方法,工具比如
变量就是变化的量,由数字,字母,下划线,美元($)组成。但是开头不能用数字。定义一个变量必须用var也可以用window["xxx"]
自定义属性 abtn[0].abc = 123;
//自定义属性
自定义属性赋值 obj.timer = setInterval(function(){},1000);
//自定义属性赋值
6大类
(1)要是基础类型可以用typeof()
来判断
字符串方法charAt()
,获取到字符串第几个charCodeAt()
获取到UniCode编码。然后在计算。再利用fromCharCode()
换算成字符
(2)要是引用类型可以用instanceof Array;instanceof Object
来判断
Number()
方法能转化字符串数字,空,空数组,要是前面有0比如00100转化的结果就是100
parseInt()
相当于把前面的数字部分转化为数字,后面的字符直接舍弃.他转化不了空,真要是转化空结果就是NaN
parseFloat()
同上
isNaN()
判断是不是NaN
在方法内部写var的都是局部。在方法外面的都是全局变量。要是在方法里面不加var,那他改变的就是全局的值。
这里特别注意下:
返回的值就是function(){alert(1)}
返回的值就是1
arguments
表示所有的参数合集
获取到样式
兼容IE678 获取到样式合集.获取到元素的属性值
数字形式:new Date(2014,4,1,9,48,12)
//特别注意月份从0开始,所以他实际找的是5月
getTime();
返回的就是格林威治时间1970年 1月1日0点0分0秒0毫秒到现在的毫秒数
Math.round( Math.random()*80 + 20 );
//返回20~100之间的随机整数
基础知识点所有效果点击这里
js常见知识点--第二篇
1、splice(start,deletecount,item)
会改变原数组的方法。
arr.splice(i,n)
删除从i(索引值)开始之后的那个元素。返回值是删除的元素
参数: i 索引值 n 个数
splice(start,deletecount,item)
方法:
2、split()
是使用指定的分隔符字符串将字符串分割成子字符串,返回一个子字符串数组。
3、slice()
方法可以对数组或字符串截取。
arr.slice(start,end)
切去索引值start到索引值end的数组,不包含end索引的值,返回值是切出来的数组。
** 2. 提取某个字符串的一部分,并返回一个新的字符串,不会改变原字符串。**
ES6 symbol类型详解
1、 定义:
symbol类型是新的原始数据类型,表示独一无二的值,表示的值,其他的原始数据类型还有Number,String,Boolean,Null,Undefined;Object属于复杂数据类型。
2、symbols 作为对象的属性
3、利用Symbol的特性可定义内部私有属性或方法
forEach
:没有返回值, 但不能使用break、continue和return语句
for…in
:遍历数组索引、对象的属性。使用for…in遍历时,原型链上的所有属性都将被访问。
map
: 有返回值。并且可以返回一个结果数组。但是map 遍历对象的话也会报错,所以map只能循环数组或者对象数组。
for...of
:创建一个循环来迭代可迭代的对象。在 ES6 中引入的 for...of 循环,以替代 for...in 和 forEach() ,并支持新的迭代协议。for...of 允许你遍历 Arrays(数组), Strings(字符串), Maps(映射), Sets(集合)等可迭代的数据结构等。
循环返回的是value。
Maps(映射)
Map 对象就是保存 key-value(键值) 对。对象和原始值可以用作 key(键)或 value(值)。Map 对象根据其插入方式迭代元素。换句话说, for...of 循环将为每次迭代返回一个 key-value(键值) 数组。
Set(集合)
Set(集合) 对象允许你存储任何类型的唯一值,这些值可以是原始值或对象。 Set(集合) 对象只是值的集合。 Set(集合) 元素的迭代基于其插入顺序。 Set(集合) 中的值只能发生一次。如果您创建一个具有多个相同元素的 Set(集合) ,那么它仍然被认为是单个元素。
JavaScript Map 和 Object 的区别
在 Object 中, key 必须是简单数据类型(整数,字符串或者是 symbol),而在 Map 中则可以是 JavaScript 支持的所有数据类型,也就是说可以用一个 Object 来当做一个Map元素的 key。 Map 元素的顺序遵循插入的顺序,而 Object 的则没有这一特性。 Map 继承自 Object 对象。