JS基础知识二
JS控制语句
switch 语句用于基于不同的条件来执行不同的动作
<script>
function myFunction(){
var x;
var d=new Date().getDay();
switch (d){
case 0:x="今天是星期日";
break;
case 1:x="今天是星期一";
break;
case 2:x="今天是星期二";
break;
case 3:x="今天是星期三";
break;
case 4:x="今天是星期四";
break;
case 5:x="今天是星期五";
break;
case 6:x="今天是星期六";
break;
defult:x="期待周末";
}
//每条case语句过后必须要加上break,当case语句里面的条件不满足时,执行defult里面的内容
//break 跳出当前循环或者语句,continue中断本次循环进行下次循环
document.getElementById("demo").innerHTML=x;
}
</script> </body>
</html>
JS异常及手动异常捕获
<script>
function ()
{
try{
throw("手动抛出异常");
}
catch(err){
console.log("异常",err)
}
finally{
alert("不论是否发生异常都会执行")
}
}
</script>
JS this关键字
面向对象语言中 this 表示当前对象的一个引用。
但在 JavaScript 中 this 不是固定不变的,它会随着执行环境的改变而改变。
- 1、在对象方法中, this 指向调用它所在方法的对象。
- 2、单独使用 this,它指向全局(Global)对象。
- 3、函数使用中,this 指向函数的所属者。
- 4、严格模式下函数是没有绑定到 this 上,这时候 this 是 undefined。
- 5、在 HTML 事件句柄中,this 指向了接收事件的 HTML 元素。
- 6、apply 和 call 允许切换函数执行的上下文环境(context),即 this 绑定的对象,可以将 this 引用到任何对象。
具体实列见菜鸟教程(https://www.runoob.com/js/js-this.html)
JS对象知识补充:实例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <button onclick="history.back()">back</button> <script>
//在javascript中所有的对象都继承自Object对象 //创建字符串的两种方式
var str1="hello";//已基本数据类型进行创建 var str2=new String("hello2");//按照堆的方式,进行字符串对象创建 /*<!--console.log(typeof str1)-->
<!--console.log(typeof str2)-->*/ //字符串的属性
console.log(str2.length) //字符串的方法
//编排方法
//console.log(str1.blood()) // //截取字符串 substring
// console.log(str1.substr(1,3))
// console.log(str1.substring(1,3)) // console.log(str1.slice(1,4)) // // ---------Array-----------
// //创建方式
// var arr1=[1,"hello",{"name":"alex"},[11,2]]
// var arr2=new Array(4)//限定数据大小size=4
// var arr3=new Array(1,2,3,4,5) // console.log(typeof arr1)
// console.log(typeof arr2)
// console.log(typeof arr3) // //Array对象的属性
// console.log(arr1.length) // //Array对象的方法
// //join方法拼接,返回一个字符串
// var arr5=[1,2,3]
// console.log(typeof arr5.join("**")) // //Tostring(),Object对象所拥有的方法,将其他类型转换为字符串
// console.log(arr1.toString())
// console.log(typeof arr1.toString() ) // //concat()
// var arr5=[1,2,3]
// console.log(typeof arr5)
// var ret3 =arr5.concat([5,66])
// console.log(ret3) //reverse 反转
var arr6=[23,45,37,100,1000]
console.log(arr6.reverse()) console.log(arr6.sort())//按最高位数字排序 function f(a,b) {
// body...
if(a>b){
return 1
} else if(a<b){
return -1
}
else{
return 0
}
} function f2(a,b){
return a-b
}
console.log(arr6.sort(f))
console.log(arr6.slice(1,4)) //删除子数组 x.splice(start,deleteCount,value)
//start:从哪个位置开始 deleteCount删除的个数 //数组的进出:栈操作
//push pop -->后进先出
// var arr7=[1,2,3];
// arr7.push(7,8,9)//在数组末尾添加数据
// arr7.push([12,34,78])
// console.log(arr7) // console.log(arr7.pop()); //shift unshift -->栈操作后进先出
var arr8=[4,5,6]
arr8.unshift(11,222);
arr8.unshift(true,{"name":"alex"});
console.log(arr8) arr8.shift();
console.log(arr8)
</script>
</body>
</html>
JS_object
JS基础知识二的更多相关文章
- [JS复习] JS 基础知识
项目结尾,空闲时间,又把<JS 基础知识> 这本书过了一遍,温故知新后,很多知其然不知其所以然的内容 豁然开朗. [1. 用于范围的标签] display :inline or bloc ...
- HTML+CSS+JS基础知识
HTML+CSS+JS基础知识 目录 对HTML+CSS+JS的理解 基础知识 对HTML+CSS+JS的理解 基础知识 插入样式表的三种方式 外部样式表:<link rel="sty ...
- Node.js基础知识
Node.js入门 Node.js Node.js是一套用来编写高性能网络服务器的JavaScript工具包,一系列的变化由此开始.比较独特的是,Node.js会假设在POSIX环境下运行 ...
- java 基础知识二 基本类型与运算符
java 基础知识二 基本类型与运算符 1.标识符 定义:为类.方法.变量起的名称 由大小写字母.数字.下划线(_)和美元符号($)组成,同时不能以数字开头 2.关键字 java语言保留特殊含义或者 ...
- 网站开发进阶(十五)JS基础知识充电站
JS基础知识充电站 1.javascript alert弹出对话框时确定和取消两个按钮返回值? 用的不是alert对话框,是confirm confirm(str); 参数str:你要说的话或问题: ...
- 菜鸟脱壳之脱壳的基础知识(二) ——DUMP的原理
菜鸟脱壳之脱壳的基础知识(二)——DUMP的原理当外壳的执行完毕后,会跳到原来的程序的入口点,即Entry Point,也可以称作OEP!当一般加密强度不是很大的壳,会在壳的末尾有一个大的跨段,跳向O ...
- NodeJs>------->>第三章:Node.js基础知识
第三章:Node.js基础知识 一:Node.js中的控制台 1:console.log.console.info 方法 console.log(" node app1.js 1> ...
- 进击Node.js基础(二)
一.一个牛逼闪闪的知识点Promise npm install bluebird 二.Promise实例 ball.html <!doctype> <!DOCTYPE html> ...
- Dapper基础知识二
在下刚毕业工作,之前实习有用到Dapper?这几天新项目想用上Dapper,在下比较菜鸟,这块只是个人对Dapper的一种总结. 2,如何使用Dapper? 首先Dapper是支持多种数据库的 ...
随机推荐
- celery 启动命令
celery 任务启动命令 celery worker -A _tasks.tasks -l info -E tasks 就是celery 任务的文件 celery beat启动命令 celer ...
- slub
1.前言 在Linux中,伙伴系统(buddy system)是以页为单位管理和分配内存.但是现实的需求却以字节为单位,假如我们需要申请20Bytes,总不能分配一页吧!那岂不是严重浪费内存.那么该如 ...
- 【flask】使用类组织配置-使用工厂函数创建程序实例
[需求] 使用配置类管理flask管理测试环境, 通过1个参数即可控制Flask是运行develpment环境还是production环境(数据库配置,邮件配置也要根据环境的变化而变化) [思路] 1 ...
- nginx不记录指定文件类型日志
1.指定记录文件日志记录的内容. vim /usr/local/nginx/conf/nginx.conf如下部分: log_format dd '$remote_addr $http_x_forwa ...
- 阶段3 2.Spring_09.JdbcTemplate的基本使用_1 今日课程内容介绍
- Linux监控命令之==>netstat
一.命令说明 netstat 命令用于显示本机网络连接.运行端口.路由表等信息 二.参数说明 -a (all):显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连 ...
- MySQL 树形结构 根据指定节点 获取其所在全路径节点序列
背景说明 需求:MySQL树形结构, 根据指定的节点,获取其所在全路径节点序列. 问题分析 1.可以使用类似Java这种面向对象的语言,对节点集合进行逻辑处理,获取全路径节点序列. 2.直接自定义My ...
- oracle系统视图V$
--数据字典表select * from v$fixed_table;select * from v$fixed_view_definition;select * from dictionary; - ...
- VirtualBox-5.2.8-121009-Win,虚拟机指令ifconfig不显示ip解决方法
- java:struts框架4(Ajax)
1.Ajax: 先导入jar包: struts.xml: <?xml version="1.0" encoding="UTF-8"?> <!D ...