摘要:宿主对象就是执行脚本的环境提供的对象。对于嵌入到网页中的来说,其宿主对象就是浏览器提供的对象,所以又称为浏览器对象,如等浏览器提供的对象。
1.对象:Javascript中所有事物都是对象,如:数值、数组、字符串、函数... 还可以自定义对象
对象的分类: (1)内部对象:Boolean类、Number类、字符串string、Date类 【Array、Boolean、Date、Function、Global、Math、Number、Object、RegExp、String以及各种错误类对象,包括Error、EvalError、RangeError、ReferenceError、SyntaxError和TypeError】 其中Global和Math这两个对象又被称为“内置对象”,这两个对象在脚本程序初始化时被创建,不必实例化这两个对象。 (2)宿主对象: 就是执行JS脚本的环境提供的对象。对于嵌入到网页中的JS来说,其宿主对象就是浏览器提供的对象,所以又称为浏览器对象,如IE、Firefox等浏览器提供的对象。不同的浏览器提供的宿主对象可能不同,即使提供的对象相同,其实现方式也大相径庭!这会带来浏览器兼容问题,增加开发难度。 浏览器对象有很多,如Window和Document等等。 (3)自定义对象:即程序员用代码自己定义的2.对象的属性:
属性是与对象相关的值。 访问对象属性的语法是:objectName.propertyName example: var obj="hello everyone!"; console.log(obj.length); 打印结果:153.访问对象的方法:
方法是能够在对象上执行的动作 语法:objectName.methodName(); example: var obj="hello everyone!"; obj.toUpperCase(); 打印结果:HELLO EVERYONE4.对象的多种创建方式:
1.使用字面量直接创建
example: var obj={ key:value, key:value, method:function(){ alert("I am Method"); } }
用法:obj.method();
2.Object构造函数创建
example: var obj= new Object(); obj.name="lucky", obj.age="18" 用法:obj();
3.使用工厂方式创建
example: function object(name, age, Introduction) { var o = new Object(); //创建对象 o.name = "lucky", o.age = "18", o.Introduction = function() { alert(o.name, o.age); } return o; }
4.使用构造函数创建
example: function Introduction(name,age,Introduction){ this.name=name; this.age=age; this.Introduction=function(){ alert("My name is" + this.name + "My age" + this.age); } } 用法: var s1=new Introduction("Lili","16"); var s2=new Introduction("Meimei","17");
5.使用原型创建
example: function Proto(){} Proto.prototype.name="Lili"; Proto.prototype.age="12"; Proto.prototype.Introducte=function(){ alert(this.name); }; 用法: var s3 = new Proto();
6.组合使用构造函数和原型模式
example: function Person(name,age, obj) { this.name = name; this.age = age; this.obj = obj; } Person.prototype = { constructor: Person, Introduction: function() { alert(this.name); } } 用法:var Limei = new Person("Limei","20");
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/94086.html
摘要:案例每隔毫秒调用函数并显示时间。当点击按钮时,停止时间代码如下计时器每隔毫秒调用函数,并将返回值赋值给计时器计时器,在载入后延迟指定时间后去执行一次表达式仅执行一次。该值标识要取消的延迟执行代码块。 简述 本系列将持续更新Javascript基础部分的知识,谁都想掌握高端大气的技术,但是我觉得没有一个扎实的基础,我认为一切高阶技术对我来讲都是过眼云烟,要成为一名及格的前端工程师,必须把...
摘要:前缀规范每个局部变量都需要有一个类型前缀,按照类型可以分为表示字符串。例如,表示以上未涉及到的其他对象,例如,表示全局变量,例如,是一种区分大小写的语言。布尔值与字符串相加将布尔值强制转换为字符串。 基本概念 javascript是一门解释型的语言,浏览器充当解释器。js执行时,在同一个作用域内是先解释再执行。解释的时候会编译function和var这两个关键词定义的变量,编译完成后从...
摘要:如果你能看懂以下两张图那就可以跳过本总结了当然点个赞再走啊喂啊喂分割线你不知道的上册作用域和闭包和查询可以理解为查找变量赋值的目标和源头当然赋值可以是隐晦的查询失败将在严格模式下导致抛出非严格模式下则会自动创建新变量额分别是修改原有作用域和 如果你能看懂以下两张图, 那就可以跳过本总结了, 当然, 点个赞再走啊喂! (#`O′)! showImg(https://segmentfau...
摘要:选择对象的本质是从点击位置发射光线,但屏幕坐标系与坐标系是不同的,而把屏幕的二维坐标转化为三维坐标就是关键,做一步换算后交由的方法即可。 Three.js 选择对象的本质是从点击位置发射光线,但屏幕坐标系与webgl坐标系是不同的,而把屏幕的二维坐标转化为三维坐标就是关键,做一步换算后交由Raycaster的setFromCamera方法即可。所以思路如下:1.获取屏幕坐标(x, y)...
摘要:给初学者的印象总是那么的杂而乱,相信很多初学者都在找轻松学习的途径。通常学了很久的基础之后,变量函数对象你也都略知一二,但一到公司开发项目的时候,却又难以下手。 Js给初学者的印象总是那么的杂而乱,相信很多初学者都在找轻松学习Js的途径。在这里给大家总结一些学习Js的经验,希望能给后来的学习者探索出一条轻松学习Js之路。Js给人那种感觉的原因多半是因为它如下的特点:A:本身知识很抽象、...
阅读 3085·2021-11-15 18:14
阅读 1743·2021-09-22 10:51
阅读 3238·2021-09-09 09:34
阅读 3449·2021-09-06 15:02
阅读 981·2021-09-01 11:40
阅读 3165·2019-08-30 13:58
阅读 2498·2019-08-30 11:04
阅读 1055·2019-08-28 18:31