贰、js的基础(一)
1、js的语法
a.区分大小写
b.弱类型变量:变量无特定类型
c.每行结尾的分号可有可无
d.括号用于代码块
e.注释的方法与c语言和java相同
2、变量
注意事项:
a.通过关键字var来声明。
b.可以声明多个变量。
c.同一个变量中储存不同的数据类型(最好是同一个变量只存储一种数据类型)
d.变量名称遵循的规则:
(1)首字符必须是字母(大小写均可)、下划线(_)或美元符号($);
(2)余下的字母随意
(3)变量名不能是关键字或者保留字。
3、数据类型
9种数据类型:未定义(Undefined)、空(Null)、布尔型(Boolean)、字符串(String)、数值(Number)、对象(Object)、引用(Reference)、列表(List)和完成(Commpletion)。
a、字符串:string对象用于处理已有的字符串。
规 则:字符包括字母、数字、标点符号和空格。字符串必须放在单引号和双引号里。
注 意:(1)复杂字符串可以用escaping方法来进行转椅;字符串具有leng属性,它返回字符串中字符的个数。
(2)即使字符包含双字节(ASCII字符只占用一个字节),每个字符也只算一个字符。
(3)获取指定字符的属性charAt()方法,第一个字符位置为0,第二个位置为1,以此类推。
b、从某一段字符中取出一段字符串,可采用slice()、substring()、sunstr()方法。
<!--slice()和substring()-->
<script>
var mystring="1234567890abcdefghijk";
document.write(mystring.slice(2,7)+"<br>");
document.write(mystring.substring(12,20)+"<br>");
document.write(mystring.slice(16)+"<br>");
</script>
<!--slice()和substring()的区别-->
<script>
var mybl="manaemjszhuzhu";
document.write(mybl.slice(6,-4)+"<br>");
document.write(mybl.substring(6,-4)+"<br>");
</script>
注意:slice()负参数时,从字符串的末尾往前计数;substring()负参数时,直接忽略负数,作为0来处理,并将较小的作为起始值,较大的作为终止位。
c、搜索操作字符,使用indexOf()和lastIndexOf()两种方法。
<script>
var myjiequ="wodejiequzifuchuangyiyayiayo";
document.write(myjiequ.indexOf("i")+"<br>");//从前往后搜索,第5个是
document.write(myjiequ.indexOf("i",12)+"<br>");//可选参数,从第几个字符开始往后找
document.write(myjiequ.lastIndexOf("i")+"<br>");//从后往前搜索
document.write(myjiequ.lastIndexOf("i",8)+"<br>");//可选参数,从第几个字符开始往前找
document.write(myjiequ.lastIndexOf("z",8)+"<br>");//字符串z,找不到,返回-1
</script>
d、数值(可以是任意的数字,包括小数和负数)
<!--数值的科学计数法toExponential()-->
<script language="javascript">
var mynumber=8907;//注意数据类型,数值的写法,数字不能用引号引起来。
alert(mynumber.toExponential(2));
</script>
e、布尔型(只有2个只:false和true;布尔型不能用引号引起来)
<!--布尔型变量的正确写法-->
<script>
var married=true;
alert("1."+typeof(married));
married="true";
alert("2."+typeof(married));//typeof()查看数据的类型
</script>
f、类型转换(转换函数、强制类型转换、利用js变量弱类型转换)
详情见——贰、js的基础(二)
g、数组:有名称相同的多个值构成一个集合。
(1)使用关键字array来声明;可以指定这个数组元素的个数(也就是长度);数据元素可以是字符串、数值和布尔值。
(2)数组的声明方法:
arrayObj = new Array(); //创建一个数组。
arrayObj = new Array([size]) 创建一个数组并指定长度,注意不是上限,是长度。
arrayObj = new Array([element0[, element1[, ...[, elementN]]]]) 创建一个数组并赋值。
代码如下:var a = new Array(["b", 2, "a", 4,]);
arrayObj = [element0, element1, ..., elementN] 创建一个数组并赋值的简写,注意这里中括号不表示可省略。
代码如下:var a = ["b", 2, "a", 4,];
(注):注意带“[]”与不带“[]”的区别
代码如下:
var a = new Array(5); //指创建长度为5的数组
| break | do | instanceof | typeof |
| case | else | new | var |
| catch | finally | return | void |
| continue | for | switch | while |
| debugger* | function | this | with |
| default | if | throw | delete |
| in | try |
| abstract | enum | int | short |
| boolean | export | interface | static |
| byte | extends | long | super |
| char | final | native | synchronized |
| class | float | package | throws |
| const | goto | private | transient |
| debugger | implements | protected | volatile |
| double | import | public |
第5 版把在非严格模式下运行时的保留字缩减为下列这些:
| class | enum | extends | super |
| const | export | import |
在严格模式下,第5 版还对以下保留字施加了限制:
| implements | package | public | interface |
| private | static | let | protected |
| yield |
贰、js的基础(一)的更多相关文章
- node.js学习(二)--Node.js控制台(REPL)&&Node.js的基础和语法
1.1.2 Node.js控制台(REPL) Node.js也有自己的虚拟的运行环境:REPL. 我们可以使用它来执行任何的Node.js或者javascript代码.还可以引入模块和使用文件系统. ...
- Node.js系列基础学习----安装,实现Hello World, REPL
Node.js基础学习 简介 简单的说 Node.js 就是运行在服务端的 JavaScript.Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台.Node.js是一 ...
- css+js+html基础知识总结
css+js+html基础知识总结 一.CSS相关 1.css的盒子模型:IE盒子模型.标准W3C盒子模型: 2.CSS优先级机制: 选择器的优先权:!important>style(内联样式) ...
- JavaScript基础精华02(函数声明,arguments对象,匿名函数,JS面向对象基础)
函数声明 JavaScript中声明函数的方式:(无需声明返回值类型) function add(i1, i2) { return i1 + i2;//如果不写return返回 ...
- JavaScript--我发现,原来你是这样的JS(基础概念--灵魂篇,一起来学js吧)
介绍 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第三篇(灵魂篇介绍),有着剩下的第三章的知识内容,当然其中还有我个人的理解.红宝书这本书可以说是难啃的,要看完不容易,挺厚的,要看懂 ...
- js复习--基础
最近工作遇到了一些小困难,基础真的很重要,漫天高楼起于地. 一,script元素 包括type=“text/Javascript”,defer延迟到html加载完解析,src=“../../test. ...
- 第八节 JS运动基础
运动基础 让Div运动起来 速度——物体运动的快慢 运动中的Bug 不会停止 速度取某些值会无法停止 到达位置后再点击还会运动 重复点击速度加快 匀速运动(速度不变) 运动框架及应用: 运动框架: 在 ...
- JS零基础一步一步做应用全记录
1.起因 作为几个外卖重度依赖癌晚期患者,呆宿舍的时候几个人一起叫外卖已经是常事.偶然看到隔壁宿舍在饿了么订餐的时候,看到在饿了么的首页上有一个谁去拿外卖的一个小游戏/工具,感觉这个小细节,饿了么把握 ...
- 认识JS的基础对象,定义对象的方法
JS的基础对象: 1.window //窗口对象 2.document //文档对象 3.document.documentElement //html对象 4.docume ...
随机推荐
- Sphinx全文索引安装教程
首先了解一下sphinx全文索引的相关知识官方网站:http://www.sphinxsearch.com/ 官方文档:http://www.sphinxsearch.com/docs/ 中文支持:h ...
- PHP小常识分享
PHP 标记 当解析一个文件时,PHP 会寻找起始和结束标记,也就是 <?php 和 ?>,这告诉 PHP 开始和停止解析二者之间的代码.此种解析方式使得 PHP 可以被嵌入到各种不同的文 ...
- ZBrush软件如何编辑物体
新手在刚接触ZBrush®的时候,想要选中模型进行编辑,有时怎么都选不中,当再次画的时候只能在边上新建一个,还是不能进行编辑,遇到类似问题,你是如何解决的,本文将为您讲解ZBrush中怎么选中物体并进 ...
- luoguP5055 【模板】可持久化文艺平衡树 可持久化非旋转treap
好题. Code: #include<bits/stdc++.h> using namespace std; #define setIO(s) freopen(s".in&quo ...
- Pyhton学习——Day39
# CSS的常用属性# 1 颜色属性# <div style="color:rgb(255,0,0)">ppppp</div># 2 字体属性# font- ...
- MySQL ERROR 1366(HY000) Incorrect string value
有以下两张表: mysql> show tables; +---------------+ | Tables_in_old | +---------------+ | book | | pres ...
- codevs 3945 完美拓印 (KMP)
题目大意:给你一个神奇的印章,他左右下三个面都是直的,上面是凸凹不平的面(凸凹都平行于别的面).然后给你一个轮廓线,如果一个面能与轮廓线完全重合,可以把印章的这个沿着轮廓线拓印,求所有的拓印方案. 把 ...
- [USACO18JAN] MooTube (离线并查集)
题目大意:给你一棵边权树,定义两点间距离为它们唯一路径上的最小路权,求与某点距离不大于K(k为已知)的点的数量 带权并查集维护集合内元素总数 路和问题 都按权值大到小排序,枚举问题, 建权值不小于K的 ...
- libvirtd.service
[root@kvm-server ~]# systemctl status libvirtd.service ● libvirtd.service - Virtualization daemon Lo ...
- vue 表格数据编辑,点击取消或者完成按钮后,关闭编辑状态没有及时生效
点击编辑按钮: 编辑状态下,表格可以编辑.但是点击“确认”或者“取消”按钮,列数据编辑状态已经修改,但是视图没有改变. 页面代码: 获取当前行的index,并直接修改当前行用于判断是否编辑状态的数据为 ...