首页 > 其他分享 >js学习记录01

js学习记录01

时间:2022-12-31 10:55:28浏览次数:40  
标签:myFunction function 01 return 函数 记录 js var else

函数声明

function functionName(parameters参数){
    执行的代码
}
function myFunction(a,b){
	return a*b;
}

菜鸟中用

document.getElementById("demo").innerHTML=myFunction(4,3);

输出12
函数表达式

var x=function(a,b){return a*b};
var z=x(4,3);

上面是匿名函数,没有名称

函数以 ; 结尾,它是一个执行函数

Function()构造函数

内置JavaScript函数构造器(Function())定义

var myFunction=new Function("a","b","return a*b");
var x=myFunction(4,3);

不用使用构造函数,可以写成

var myFunction=function(a,b){return a*b};
var x=myFunction(4,3);

函数可作为一个值使用

var x=myFunction(4,3);

JavaScript函数可以作为表达式使用

var x=myFunction(4,3)*2;

js的函数有属性方法

function myFunction(a,b){
    return arguments.length;
}
//这就是属性返回函数调用过程接收到的参数个数

toSting()方法将函数作为一个字符串返回

function myFunction(a,b){
    return a*b;
}

var txt=myFunction.toString();

箭头函数

ES6新增

(参数1,参数2,...,参数n)=>{函数声明} or 单一表达式
只有一个参数时,可以选择是否加圆括号
(单一参数)=>{函数声明}
单一参数=>{函数声明}

没有参数的函数应该写一对圆括号

()=>{函数声明}

对比:

//ES5
var x=function(x,y){
    return x*y;
}

//ES6
const x=(x,y)=>x*y;

函数只是一个语句可以省略return关键字和大括号{}

const x=(x,y)=>{return x*y};

JS对象

对象属性

var person={
    firstname:"R",
    lastname:"MC",
    id:111,
    fullName:function() 
    { 
        return this.firstName + " " + this.lastName; 
    }
}

两种寻址方式

name=person.lastname;
name=person["lastname"];

undefined表示变量不含有值

person=null;

通过将变量的值设置为null清空变量

声明变量

声明变量时,可以用关键词“new”声明类型

属性

键值对通常写法name : value

对象方法

对象方法通过添加()调用

name=person.fullName();

如果访问对象fullName属性,那会作为一个定义函数的字符串返回

name=person.fullName;

返回

function() { return this.firstName + " " + this.lastName; }
带返回值的函数

加了return

赋值给未声明的变量

carname="Volvo";

将声明window的一个属性carname

js作用域

  • 局部作用域
function myFunction(){
    var carName="Volvo"
    //函数内可调用carName
}
  • 全局作用域
var carName="Volvo"
function myFunction(){
    //内外都可调carName
}

事件

比如点击按钮,发生交互事件

字符串

可用单引号或双引号

可用索引访问字符串每个字符

var character=carname[7];

var sln=txt.length;//可用获取字符串长度

反斜杠是转义字符

字符串可以是对象

var y=new String("John");
typeof y//返回object
用于字符串的+运算符
比较运算符

===为绝对相等,即数据类型与值都必须相等

!==不绝对等于,(值和类型有一个不相等,或两个都不相等)

条件语句

if语句

if(condition){
    条件为true时执行的代码
}

if-else语句

if(condition){
    当条件为true时执行
}
else{
    条件为false执行
}

if-else if-else语句

if(condition1){
    条件1为true执行
}
else if(condition2){
    条件2为true执行
}
else{
    条件1和2都不true时执行
}
switch语句
switch(n){
    case 1:
        执行代码块 1
        break;
    case 2:
        执行代码块 2
        break;
    default:
        与case1和case2不同时执行的代码
}

标签:myFunction,function,01,return,函数,记录,js,var,else
From: https://www.cnblogs.com/goicandoit/p/16964738.html

相关文章

  • 【题解】P5574 [CmdOI2019]任务分配问题
    stocmd学长orz题意P5574[CmdOI2019]任务分配问题给定一个长度为\(n\)的排列,试将它分成\(k\)段,使得每段的顺序对数量之和最小。\(n\leq2.5\times10^4,k\l......
  • 【题解】P3158 [CQOI2011]放棋子
    兄弟们,我起了,一日之计在于晨呐。题意P3158[CQOI2011]放棋子有一个\(n\)行\(m\)列的棋盘和\(c\)种颜色的棋子,每种棋子有\(a_i\)个。要求不同颜色的棋子不能放......
  • 微信聊天记录删除了怎么恢复,简单几步搞定!
    在当下社会,微信已经成为了,我们生活中不可缺少的一部分,更有夸张的说法,你可以一天不吃饭,可是不能一天不打开微信APP进行聊天,而很多用户在使用微信进行聊天的时候会发现,与QQ不......
  • js中的绝对定位和相对定位
    子元素是相对于父元素来做定位的,因此要用absolute。绝对定位是相对于参照物定位,相对定位是相对于自身来定位(此时的子元素的poisition是absolute,父元素的poisition是relativ......
  • 一次多线程并发查询导致结果混乱的问题的排查和记录·JAVA·2022
    业务背景该业务是报表查询类业务:要求从销售出库数据(存储于ElasticSearch索引中)中,按照管理者分组聚合查询各个管理者一定时间段内的动销汇总数据,如出库金额、毛利率等。但......
  • buuoj-pwn-ciscn_2019_final_10
    buuoj-pwn-ciscn_2019_final_10总结题目分析glibcubuntu18.04,对应GLIBC2.27,对于这题,我们知道doublefree没检查就行逆向分析关键函数一第一个箭头所指没法绕过,随便......
  • windows server 2019 2012 server 2022 无线网卡驱动安装报错,无线网卡驱动不能安装, i
    windowsserver2019无线网络服务安装段落无效windowsserver2019无线网卡驱动安装报错,无线网卡驱动不能安装,inf服务安装段落无效 indowsserver2019安装无线驱......
  • P1600 [NOIP2016 提高组] 天天爱跑步
    //题目大意:有一棵树,在每个节点上会在Pi时刻出现一个观察员,在该时刻观察员如果观察到路过的运动员,那么该观察员的分数加1;//现在给定m条路径的起点与终点,每个运......
  • P2146 [NOI2015] 软件包管理器 树链剖分
    //题目大意:给定一棵树,树上的每个节点是一个软件,现在给出如下两个指令,install与uninstall,//如果需要installx号软件,那么我需要安装他到根节点之间的所有软件;如......
  • nodejs常用命令
    npm管理配置设置下载源npmconfigsetreqistryhttps://registry.npm.taobao.org查看下载源npmconfiggetreqistry设置缓存目录npmconfigsetcache"D:\npm\n......