
定义方式一
function 函数名(){
函数体;
}
定义方式二
var 函数名 = function(){
函数体;
}
★参数问题:JavaScript在传递参数时可以传递任意个参数或不传参
arguments:表明传进来的所有参数是一个数组
rest参数:获取除了已经定义的参数之外的所有参数(必须写下参数最后面)
function aaa(a,b,...test){
console.log("a -> "+a);
}
1.2、变量的作用域
-
在JavaScript中,var定义变量实际是有作用域的(例:在函数体内申明,在函数体外不可以使用)
-
如果两个函数使用了相同的变量名,只要在函数体内,就不冲突
-
内部函数可以访问外部函数的成员,反之则不行
规范(把自己的代码放在自己定义的唯一空间中,降低命名冲突问题)
var xxx = {}; // 唯一全局变量
xxx.name = ''; // 定义全局变量
xxx.add = function(a,b){
return a + b; //定义方法
}
1.3、方法常量(const)
方法就是放在对象里面,对象只有两个东西:属性和方法
定义
var xxx = {
name : 'sss',
birth : 2000,
age:function(){
var now = new Date().getFullYear();
return now - this.birth;
}
}
拆分定义
function gatAge(){
var var now = new Date().getFullYear();
return now - this.birth;
}
var *** = {
name : 'sss',
birth : 2000,
age:getAge
}
apply
在JavaScript中可以控制this指向
function gatAge(){
var var now = new Date().getFullYear();
return now - this.birth;
}
var *** = {
name : 'sss',
birth : 2000,
age:getAge
}
var xiaoming = {
name : '小明',
birth : 2000,
age:getAge
}
getAge.apply(***,[]); // this指向了***,参数为空
getAge.apply(xiaoming,[]);
2、内部对象
2.1、Data
基本使用
var now = new Data(); now.getFullYear();//年 now.getMouth();//月 now.getData();//日 now.getDay();//星期几 now.getHours();//时 now.getMinutes();//分 now.getSeconds();//秒 now.getTime();//时间戳 全国统一 console.log(new Data(1651551780241);
转换
console.log(new Date(1651551780241)) Tue May 03 2022 12:23:00 GMT+0800 (中国标准时间) now.toLocaleString(); '2022/5/3 12:23:00' now.toGMTString() 'Tue, 03 May 2022 04:23:00 GMT'2.2、JSON
json是什么点击跳转百度百科
JSON字符串和JS对象的转化
var user = {
name:"xxx",
age:3,
sex:'男'
};
//对象转化为json字符串
var jsonUser = JSON.stringify(user);
//JSON字符串转化为对象
var obj = JSON.parse{'{"name":"xxx","age":3,"sex":"男"}'};
3、面向对象编程
3.1、class继承
1、定义一个类。属性,方法
class student{
constructor(name){
this.name = name;
}
hello(){
alert("hello");
}
}
//创建对象
var xiaoming = new student("xiaoming");
xiaoming.hello();
2、继承
class student{
constructor(name){
this.name = name;
}
hello(){
alert("hello");
}
}
class xxx extends student{//继承
constructor(name,grade){
super(name);
this.grade = grade;
}
myGrade(){
alert("sss");
}
}
var xiaoming = new xxx("xiaoming",2);
原型链(__ proto __)
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)