编程笔记 html5&css&js 085 JavaScript 内置函数
一、内置函数
以下是一些JavaScript中的内置函数示例:
-
Math对象的函数:
console.log(Math.random()); // 生成0到1之间的随机数(含0不包含1) console.log(Math.pow(2, 3)); // 计算2的3次方:8 console.log(Math.max(3, 5, 2)); // 返回最大值:5
-
Array对象的方法:
let arr = [1, 2, 3, 4, 5]; console.log(arr.length); // 输出数组长度:5 console.log(arr.push(6)); // 向数组末尾添加元素并返回新长度:6 console.log(arr.pop()); // 删除并返回数组最后一个元素:6 console.log(arr.join('-')); // 将数组元素用指定字符连接为字符串:"1-2-3-4"
-
String对象的方法:
let str = "Hello, World!"; console.log(str.length); // 输出字符串长度:13 console.log(str.toUpperCase()); // 将字符串转换为大写:"HELLO, WORLD!" console.log(str.indexOf("World")); // 查找子串位置:7
-
Object对象的方法:
let obj = { name: 'Alice', age: 25 }; console.log(Object.keys(obj)); // 获取对象的所有键名:["name", "age"] console.log(Object.values(obj)); // 获取对象的所有键值:["Alice", 25] console.log(Object.assign({}, obj, { city: 'New York' })); // 深拷贝并合并对象:{ name: 'Alice', age: 25, city: 'New York' }
-
Function构造函数和函数方法:
function greet(name) { return "Hello, " + name; } console.log(greet.toString()); // 将函数转换为字符串表示形式 console.log(Function.prototype.call.toString()); // 显示call方法的源代码 let person = { firstName: 'Alice' }; console.log(greet.call(person, person.firstName)); // 使用call方法改变this指向并调用函数:"Hello, Alice"
以上只是JavaScript内置函数的一部分示例,实际上还有更多其他类型的内置函数和方法可供使用,例如Date对象处理日期与时间、Number对象用于数字操作、RegExp对象进行正则表达式匹配等。
在JavaScript中,对象是一种数据结构,它将属性(键值对)和方法(可执行的函数)捆绑在一起。每个属性都有一个名称(键)和对应的值,可以是任意类型的数据。对象允许以更接近现实世界实体的方式来组织和操作数据。
二、内置对象
JavaScript提供了多种内置对象,这些对象由JavaScript语言核心提供,并且在全局作用域中可以直接使用。以下是JavaScript的一些主要内置对象:
-
Object:所有其他对象的基类,任何对象都继承自Object,它包含一些通用的方法如
toString()
,valueOf()
,hasOwnProperty()
等。 -
Array:用于处理数组数据结构的对象,具有排序、添加、删除元素等功能,如
push()
,pop()
,join()
,map()
,reduce()
等方法。 -
String:用于字符串操作,包含查找、替换、分割等方法,如
length
,charAt()
,concat()
,indexOf()
,trim()
等。 -
Number:虽然不是直接的一个构造函数对象,但包含一系列与数字相关的属性和方法,如
toFixed()
,toExponential()
,isNaN()
等。 -
Math:提供了数学计算相关的函数,如求绝对值、平方根、随机数生成、最大值、最小值等,例如
Math.random()
,Math.PI
,Math.pow()
等。 -
Date:处理日期和时间,能够创建、解析和格式化日期对象,如
new Date()
,getDate()
,getFullYear()
,setHours()
等。 -
Function:函数也是对象,它们可以被定义、存储和调用,每个函数都是Function类型的实例。
-
RegExp:正则表达式对象,用于文本匹配、查找和替换模式,如
/pattern/
,.test()
,.exec()
等。 -
Global Objects:
Global
(浏览器环境下的window
对象):提供了全局作用域中的许多函数和属性。JSON
:用于处理JSON序列化和反序列化的对象,如JSON.parse()
,JSON.stringify()
。Error
:错误对象及其子类型,如Error
,TypeError
,ReferenceError
等,用于异常处理。
以上只是部分主要的JavaScript内置对象,实际上还有更多根据ECMAScript标准定义的内置对象以及特定于宿主环境(如浏览器或Node.js)的对象。
三、函数和方法之间的区别
在JavaScript中,函数和方法之间的区别主要在于它们的上下文和调用方式:
-
函数(Function):
- 函数是可执行的代码块,它可以接受参数并可能返回一个值。
- 函数可以独立存在,不依赖于任何特定的对象实例。
- 在JavaScript中,函数也是对象,它们具有属性和方法,例如
name
属性、.call()
,.apply()
等方法。 - 函数可以通过其名称直接调用,如
myFunction(arg1, arg2)
。
-
方法(Method):
- 方法是与对象关联的函数,它作为一个属性存储在对象上,并且通常用于操作该对象或与之相关的数据。
- 方法是由对象调用的函数,也就是说,它是一个通过
.
或[]
运算符从对象实例调用的函数,如myObject.myMethod(arg1, arg2)
。 - 在面向对象编程(OOP)的上下文中,方法通常代表了对象的行为。
简而言之,在JavaScript中,所有的方法本质上都是函数,但当一个函数被定义为某个对象的一部分时,我们就称它为这个对象的方法。因此,关键区别在于函数是否与对象关联以及如何被调用,而不是它们本身的实现机制。