当前位置: 首页 > 编程日记 > 正文

JavaScript基础笔记集合(转)

JavaScript基础笔记集合

JavaScript基础笔记集合

 

js简介

js是脚本语言。浏览器是逐行的读取代码,而传统编程会在执行前进行编译

 

js存放的位置

  1. html脚本必须放在<script></script>之内。

  2. <script>可放置在<head><body>

  3. 和css一样,JS可以存放在外面,通过<script src="">来链接

  4. 现代浏览器不需要声明type="text/javascript"

  5. 通常的做法是把函数放入<head>或页面的底部,这样就可以把他们放到同一位置,并且不会干扰页面内容

 

消息对话框

直接弹出消息对话框alert

alert("text");

w3c: alert() 函数在 JavaScript 中并不常用,但它对于代码测试非常方便。

确认消息对话框(confirm)

var message=confirm("str");---------------str为消息对话框显示的内容

confirm返回值boolean

获得内容对话框

var message=prompt("str");-------------str消息对话框显示的内容

你输入的内容会被prompt返回

demo

<scrpit>function xx(){var message=confirm("str");if (confirm==true){ document.write("str");} </script> <body> <input type="button" onclick="xx()" value="xxx" /> </body>

 

数据类型

动态类型

js拥有动态类型,意味着相同的变量,可以用作不同类型。

var x=2;var x ="a";

 

数字类型

  1. js只有一种数字类型,可以加小数点,或者不加,太大或太小的数字可以用科学计数法

  2. 整数最大15位,小数最大17位。
    3.八进制以【0】开头,十六进制以【0x】开头。
    科学计数法:

    var a=123e5---12300000; 
    var b=123e-5------0.00123

 

数组

创建数组

var a = new Array() ;a=["a","b"];var a =new Array("a","b");var a =["a","b"];

 

数组相加

a.concat();

用数组中的元素组成字符串

a.join(".")-----默认两元素之间逗号隔开,这里设置用[.]隔开。

排序

a.sort();

布尔

var a =new Boolean(0);
当值为空或者为:0、-0、null、""、false、undefined或者NaN时,返回false。

 

对象

对象简述

对象由{}分隔,在{}内,对象的属性以(name:value)来定义。属性用逗号分隔
var person{firstname="a",lastname="b"}
寻址方式:
person.firstname;person["firstname"]

 

创建对象的方法

1.定义并创建对象实例。

dog=new Object();-----创建dog对象
dog.name="diudiu";-----dog对象属性
|| dog={name:"diudiu",};

2.使用函数定义对象,然后创建对象实例

function(name,habit){    this.name=name;    this.habit=habit;
}var a=new dog("diudiu",bite);

为已有对象添加属性

假设dog对象已经存在,但是没有gf属性
`dog.gf="joyce";

 

变量

  1. 当向变量赋值文本时,加引号

  2. 赋值数字时,不要加引号,否则会当文本处理

  3. 重新申明变量,变量的值不会丢失。

 

常用变量类型

var a =new Number/Array/String/Boolean/Object;

 

字符串

var txt="abc";
常用方法:

txt.lenght()------获取长度txt.fontsize(12px)-----文字大小txt.link("http://")----为字符串加链接txt.strike()-------删除线txt.toLowerCase/UpperCase----大小写转换txt.indexOf("a")-----定位字母a出现位置txt.match("a")-------查找字符,找到返回该字符,否则nulltxt.replace(/b/,"xxx")-------把字符b替换成xxx

 

打开/关闭窗口

打开窗口

window.open("url","name","features","replace")

window.open("http://www.baidu.com","_blank","width=200,height=200,status=no")

wondow_open

features

 

关闭窗口

window.close();--------------关闭本窗口
<窗口对象>.close();----------关闭指定窗口

 

函数

  1. 函数格式
    function name(){}

  2. 函数对大小写敏感

  3. 函数可以返回值,通过return语句,并且return是一条函数结束语句。

  4. 函数可以传参数,形参与实参一一对应。

  5. 局部变量随函数而消亡。

  6. 在函数内为全局变量赋值,该变量依旧是全局变量。

 

循环

for/in循环

<script>var txt;     var person={name:"bill",age=20}     for(var x in person){          txt+=person[x]; }</script>

 

x遍历person对象每一个属性

continue&break

  1. continue只能用在循环中

  2. break(不带标签)只能用在循环或switch中

  3. break(带标签),用于跳出代码块
    格式:

    label:{
    statement1;statement2;break:label;statement3;statement4; }

    语句只会执行1,2;3,4不会执行

验证

JavaScript可用来在数据被送往服务器前对表单输入的数据进行验证

demo

如果field值为空,返回false,否则true

function validate(field,alerttxt){    with(field){    if(value==null||value=="")        {alert(alerttxt);return false}    else return true;     }

 

DOM简介

DOM-document object model
定义:当网页被加载时,浏览器会创建页面的DOM。
它是用以访问html元素的正式w3c标准。

 

 

html dom 树


通过可编程的对象模型,js获得了足够的能力来改变html
它可以改变元素,属性,样式,以及对事件做出反应。

通过js改变html/css

获取并改变html元素内容

var mychar=document.getElementById("idName");
mychar.InnerHTML="xxx";----------将id为idName的内容改为xxx

 

改变元素属性

document.getElementById("imageName").src="";------改变图片链接

改变元素样式

格式Object.style.property=new style;

var mychar=document.getElementById("idName");
mychar.style.color="red";

改变输出流

document.write("sunOpar");--------这个方法将覆盖原来的html页面

 

增删元素

增加

在id为box的div元素中增加p标签

html:

<div id="box"></div>

js:

var fir=document.creatElement("p");---创建p标签var lat=document.creatTextNode("新文本"); fir.appendChild(lst);var element=document.getElementById("box"); element.appendChild(fir);
 
删除

要删除元素,需要得到该元素的父元素

var child=document.getElementById("id1");
child.parentNode.remove(child);

 

正则表达式

正则表达式简述

当你要检索某个文本时,可以使用一种模式来检索文本,RegExp就是这种模式。

定义

var part=new RegExp("after");---定义part的RegExp为【after】

 

检索(boolean)

part.test("aftervax")-----由于这个字符串包含【after】,返回true

 

检索(指定值)

part.exec("aafterrr")-------由于也包含,返回该值【after】

 

第二个参数

part=new RegExp("a","g")-----【g】意思是【global】,搜索所有的【a】
part.exec("acdadcda")------此时会返回所有【a】,输出是:【aaanull】

 

改变RegExp

part.compile("before")----把【after】改成【before】

转载于:https://www.cnblogs.com/lianghong/p/8046559.html

相关文章:

Xapian安装

Xapian是一个用C编写的全文检索程序&#xff0c;他的作用类似于Java的lucene。Xapian除了提供原生的C编程接口之外&#xff0c;还提供了Perl&#xff0c;PHP&#xff0c;Python和Ruby编程接口和相应的类库&#xff0c;所以你可以直接从自己喜欢的脚本编程语言当中使用Xapian进行…

IOS开发中多线程的使用

一、创建多线程的五种方式1.开启线程的方法一 NSThread * thread[[NSThread alloc] initWithTarget:self selector:selector(_update) object:nil]; 2.开启线程的方法二 [NSThread detachNewThreadSelector:selector(_update) toTarget:self withObject:nil]; 3.开启线程的方法…

介绍如何用 Python 来绘制高清的交互式地图,建议收藏

作者 |俊欣来源 |关于数据分析与可视化今天小编来为大家介绍一个叫做Folium的模块&#xff0c;我们可以用它来绘制高清的交互式地图&#xff0c;并且标注出重要的地理位置等等&#xff0c;读者在看过本篇文章之后&#xff0c;读者大致会掌握1. 使用Folium来进行交互式地图的绘制…

Pandas Cheat Sheet

Pandas Doc: http://pandas.pydata.org/pandas-docs/stable/10min.html#min 转载于:https://www.cnblogs.com/nuswgg95528736/p/8053582.html

google ProtoBuf开发者指南

目录 1 概览 1.1 什么是protocol buffer 1.2 他们如何工作 1.3 为什么不用XML? 1.4 听起来像是为我的解决方案&#xff0c;如何开始? 1.5 一点历史 2 语言指导 2.1 定义一个消息类型 2.2 值类型 2.3 可选字段与缺省值 2.4 枚举 2.5 使用其他消息…

AI 生成的代码可信吗?编写的代码有 Bug 吗?

编译 | 禾木木 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 即使是帮助开发人员编写软件的工具也会产生类似的bug。 目前&#xff0c;大部分的软件开发人员会让 AI 帮助开发者们编写代码&#xff0c;但是开发人员发现 AI 会像程序员的代码一样还是存有 bug。 去年…

嵌入式开发之信号采集同步---VSYNC和HSYNC的作用以及它们两者之间的关系

VSYNC和HSYNC的作用以及它们两者之间的关系 VSYNC和HSYNC的作用以及它们两者之间的关系 VSYNC和HSYNC是什么 VSYNC: vertical synchronization&#xff0c;指与显示器的帧数同步。 简单来说就是启用了VSYNC的渲染过程&#xff0c;帧数不会超过显示器的帧数&#xff0c;一个同步…

对ListenSocket 的研究(四)

对postmaster.c 中的 readmask&#xff0c;rmask,nsocket等进行分析&#xff0c;可以看到&#xff1a;它们之间有如下的关系(与细节无关的代码省略)&#xff1a;复制代码/* * Initialise the masks for select() for the ports we are listenin…

MySQL下的NoSQL解决方案HandlerSocket

目前使用MySQL的网站&#xff0c;多半同时使用Memcache作为键值缓存。虽然这样的架构极其流行&#xff0c;有众多成功的案例&#xff0c;但过于依赖Memcache&#xff0c;无形中让Memcache成为故障的根源&#xff1a; Memcache数据一致性的问题&#xff1a;当MySQL数据变化后&a…

人群距离监测 DeepSOCIAL 最全汉化论文+源码导读

作者 |神经星星来源 |HyperAI超神经By 超神经内容一览&#xff1a;在疫情期间&#xff0c;公共场所中尽量避免人群聚集&#xff0c;可以有效控制疫情扩散。英国利兹大学的研究团队开源了 DeepSOCIAL 人群距离监测项目&#xff0c;通过 YOLOv4SORT 的方式快速实现了这一应用。关…

堆和栈的差别(转过无数次的文章)

一、预备知识—程序的内存分配 一个由C/C编译的程序占用的内存分为下面几个部分 1、栈区&#xff08;stack&#xff09;— 由编译器自己主动分配释放 &#xff0c;存放函数的參数值&#xff0c;局部变量的值等。其 操作方式相似于数据结构中的栈。 2、堆区&…

ARM WFI和WFE指令【转】

本文转载至&#xff1a;http://www.wowotech.net/armv8a_arch/wfe_wfi.html 1. 前言 蜗蜗很早以前就知道有WFI和WFE这两个指令存在&#xff0c;但一直似懂非懂。最近准备研究CPU idle framework&#xff0c;由于WFI是让CPU进入idle状态的一种方法&#xff0c;就下决心把它们弄清…

分享几个用 Python 给图片添加水印的方法,简单实用

作者 |俊欣来源 |关于数据分析与可视化今天来分享几种可以给图片添加水印的方法&#xff0c;都是十分的简单实用&#xff0c;大家在看了之后也可以私底下去自己试试&#xff0c;有些方法需要的代码量就比较少&#xff0c;有些方法需要的代码量就稍微多一些&#xff0c;那我们开…

Apache服务器下使用 ab 命令进行压力测试

ab是Apache超文本传输协议(HTTP)的性能测试工具。 其设计意图是描绘当前所安装的Apache的执行性能&#xff0c;主要是显示你安装的Apache每秒可以处理多少个请求. #ab -v可以看出其基本信息 #ab -n1000 -c10 http://localhost:81/t.php 这是一个基本命令 -n1000表示总请求数为…

《Objective-c》Foundation框架 -(字符串:NSString和NSMutableString)

一、NSString&#xff08;不可变字符串&#xff09; 1.创建字符串的方式&#xff1a;&#xff08;利用对象方法&#xff09; 方式一&#xff1a;最快速的创建 方式二&#xff1a; 方式三&#xff1a; 方式四&#xff1a; 方式五&#xff1a;NSUTF8StringEncoding 用到中文就可以…

基于Vue, Vuex 和 ElementUI 构建轻量单页Hexo主题Lite

Hexo Theme Lite Keep Calm, Lite and Writing.light single page blog application theme, using Vue, Vuex, ElementUI and so on. 一款轻量单页博客主题&#xff0c;基于Vue, Vuex 和 ElementUI 构建, 工具语言 Typescript Live Demo Demo | 在线演示 Github 项目地址 Previ…

怎么关闭wordpress评论

1、要是关闭某一篇文章的评论&#xff0c;在发表文章的时候&#xff0c;在下面有个“讨论”&#xff0c;把"允许评论"去掉勾选就可以了。 2、要是关闭所有文章的评论&#xff0c;在“设置”-“讨论设置”把“默认文章设置”中的“允许访客对新文章发表评论 ”不再勾…

ACM-ICPC历届世界总冠军名单1977-2015

为什么80%的码农都做不了架构师&#xff1f;>>> ‍‍‍‍‍‍ ACM-ICPC历届世界总冠军1977-2015 更新时间2016-04-20 17:39 年份总决赛地点冠军大学国家2015年摩洛哥马拉喀什‍‍‍‍聖彼得堡國立資訊科技、機械與光學大學 (破纪录解出全部题目)‍‍‍‍俄罗斯2014…

AI 盯上了外包司机,看后视镜就被扣分,奖金拜拜!

整理 | 梦依丹 来源 | CSDN 生活在科技领先时代的我们&#xff0c;每天无不被算法支配着&#xff0c;从衣食住行到工作中的决策参考。以前在电影中见到的AIer控制人类的场景&#xff0c;越来越现实化。 AI算法不断优化之下&#xff0c;有些企业直接通过AI来给员工打绩效&…

用 Handler 轻松实现专属Android定时器

今年在项目中发现为了实现倒计时、时间段的延迟执行、时间段的轮询执行任务&#xff0c;都是采用Handler postDelayed(runnable,delayMillis). 等等&#xff0c;这有毛病&#xff1f;那你将实现以上功能时、代码大概如下。 Handler handler new Handler()&#xff1b; int cou…

查看Firefox中的缓存

在firefox浏览器中可以在地址栏使用about:cache命令查看当前缓存。 Information about the Cache Service Disk cache device Number of entries:333Maximum storage size:458708 KiBStorage in use:3685 KiBCache Directory:C:\Documents and Settings\Administrator\Local …

技术大咖齐聚爱数智慧人机交互技术论坛 | CNCC2021

CNCC2021【人机交互技术的机遇与挑战】技术论坛将于2021年10月28日13:00-16:00在深圳国际会展中心CC105B召开&#xff0c;本次论坛由CCF主办&#xff0c;爱数智慧创始人兼CEO张晴晴担任论坛主席&#xff0c;邀请来自产学研各界技术大咖&#xff0c;就人机交互、智能语音技术的应…

响应式网页的布局设计

值得收藏的14款响应式前端开发框架 作为今年大热的设计趋势&#xff0c;响应式已然是设计师的标配技能。今天阿里的同学从响应式设计的布局类型、布局实现两方面深入讲解&#xff0c;有哪些实现布局的方式&#xff0c;该采用何种方式&#xff0c;都有相当专业细致的解答&#x…

halcon算子翻译——set_framegrabber_callback

名称 set_framegrabber_callback - 为图像采集设备注册一个回调函数。 用法 set_framegrabber_callback( : : AcqHandle, CallbackType, CallbackFunction, UserContext : ) 描述 算子set_framegrabber_callback为AcqHandle指定的图像采集设备注册一个回调函数。 参数CallbackF…

设置Sysctl.conf用以提高Linux的性能(最完整的sysctl.conf优化方案)

Sysctl是一个允许您改变正在运行中的Linux系统的接口。它包含一些 TCP/IP 堆栈和虚拟内存系统的高级选项&#xff0c; 这可以让有经验的管理员提高引人注目的系统性能。用sysctl可以读取设置超过五百个系统变量。基于这点&#xff0c;sysctl(8) 提供两个功能&#xff1a;读取和…

AI 天气预报准确度高于气象台,一张 GPU 1秒预测未来 90 分钟天气

编译 | 禾木木 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 此次 DeepMind 聚焦天气预报这一重大挑战&#xff0c;与英国气象局合作将 AI 应用于预测降雨。 在天气现象中&#xff0c;雨尤其重要&#xff0c;因为它会影响我们的日常决策。 我应该带伞吗&#xff1…

33.搜索插件——autocomplete

搜索插件的功能是通过插件的autocomplete()方法与文本框相绑定&#xff0c;当文本框输入字符时&#xff0c;绑定后的插件将返回与字符相近的字符串提示选择&#xff0c;调用格式如下&#xff1a; $(textbox).autocomplete(urlData,[options]); 其中&#xff0c;textbox参数为文…

React Native开源项目如何运行(附一波开源项目)

学习任何技术&#xff0c;最快捷的方法就是学习完基础语法&#xff0c;然后模仿开源项目进行学习&#xff0c;React Native也不例外。React Native推出了1年多了&#xff0c; 开源项目太多了&#xff0c;我们以其中一个举例子.给大家演示下如何运行开源项目.(前提是你已经搭建好…

http header头设置反向代理不缓存

一&#xff1a;概念说明 Expries:网页的cache过期时间&#xff0c;到指定日期网页cache失效 Last-Modified:网页的最新更新时间 Cache-Control 缓存控制 no-cache:不缓存网页 no-store:不缓存网页&#xff0c;如果有则删除之 must-revalidate:使之前&#xff0c;服务器响应使用…

985大学的高材生只会写代码片段,丢人吗?

很多同学在学习编程的时候都会遇到各种各样的难题&#xff0c;比如&#xff1a;没有合适的资料、学习过于碎片化、资料的质量层次不齐、看了很多视频自己动手时却还是不会、接触不到完整项目、无法检测自己的编程水平是不是企业所认可的……最近&#xff0c;小郭和小解同学也遇…