Javascript

API 和 web API 区别
ApI (应用程序编程接口)
简单理解:api是给程序员提供的一种工具,以便能更轻松实现想要完成的功能。
web API是浏览器提供的一套操作浏览器功能和页面元素的API(DOM和BOM)

  • web api
    在web api 中比如我们想要浏览器能弹出一个警示框,直接使用alert(“弹框”)alert就是web api中的一个接口。

API和webAPI总结:

API是为我们程序员提供的一个接口,帮助我们实现某种功能,我们会使用就可以,不必纠结内部的结构。
webAPI主要是针对浏览器提供的接口,主要针对于浏览器做交互效果。一般都有输入和输出(函数的传参和返回值)webAPI很多都是方法(函数))。学习webAPI可以结合内置对象的方法学习。

DOM

  • DOM(文档对象模型)是W3C组织推荐的处理可扩展标记语言(Html或者XML)的标准编程接口。我们可以通过DOM接口改变网页的样式,内容,结构。
    - DOM树
    在这里插入图片描述

  • 文档:一个页面就是一个文档,DOM中使用document表示

  • 元素:页面中的所有标签都是元素,DOM中使用element表示

  • 节点:网页中的所有内容都是节点,DOM中使用node表示

DOM获取元素

  • 根据ID获取(使用getElementById()方法来获取元素)
  • 根据标签名获取
  • 通过HTML5新增的方法获取
  • 特殊元素获取

原型

JS中的原始数据类型:number,string,boolean,null,undefined,object

1.一个变量声明,但未赋值,输出则是undefined
2.函数没有明确返回值,如果用变量接受,输出则是undefined
3.Undefine + number = NaN

原型链 (JS原型与原型链继承)

实例对象与原型之间的连接,叫做原型链。proto( 隐式连接 )
JS在创建对象的时候,都有一个叫做proto的内置属性,用于指向创建它的函数对象的原型对象prototype。
内部原型(proto)和构造器的原型(prototype)
1、每个对象都有一个proto属性,原型链上的对象正是依靠这个属性连结在一起
2、作为一个对象,当你访问其中的一个属性或方法的时候,如果这个对象中没有这个 方法或属性,那么Javascript引擎将会访问这个对象的proto属性所指向上一个对 象,并在那个对象中查找指定的方法或属性,如果不能找到,那就会继续通过那个对象 的proto属性指向的对象进行向上查找,直到这个链表结束。

javascript

1.arguments对象的用法

首先arguments对象只是与数组类似,并不是Array的实例。因此,无法对 arguments 变量使用标准的数组方法,比如 push, pop 或者 slice。 虽然使用 for 循环遍历也是可以的,但是为了更好的使用数组方法,最好把它转化为一个真正的数组。

未转数组之前的使用方法如下:

function add(){
			console.log(arguments)
			let sum = 0
			for(var i = 0; i<arguments.length;i++){
				sum += arguments[i]
			}
			return sum
		}
		add(1)
		let reser = add(1,2,3,4,6)
		console.log(reser)
		
		输出为16

转数组之后的使用方法如下:

第一种方式
var args = Array.prototype.slice.call(arguments);
第二种方式
var args = [];
for (var i = 0; i < arguments.length; i++) {
 args.push(arguments[i]);
}

2.匿名函数

匿名函数就是直接将函数赋值到定义的变量名字之后(也可以称为函数表达式的写法)

如下:

let add2()=function add(){
			console.log(arguments)
			let sum = 0
			for(var i = 0; i<arguments.length;i++){
				sum += arguments[i]
			}
			return sum
		}

3.全局作用域和局部作用域

  1. 全局作用域是作用于整个代码执行的环境(整个script标签的内部)或者是整个js文件。
  2. 局部作用域是作用于某个函数内部中的代码,因为与函数有关系所以也称为函数作用域

4.全局变量和局部变量

let g = '全局变量' // 定义一个全局变量
		function add3(){
			console.log(g) //这里可以输出g的值
			let f = '局部变量' //在函数里面定义一个局部变量f
		}
		add3()
		console.log(f) //在这里输出f的时候显示f未定义
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值