js程序是用Unicode字符集编写的,

2、转义字符:反斜线

1
2
3
4
function Test(){
  var s='you\'re right,it can\'t be a quote';
  console.log(s);
}

3、slice方法:方法可从已有的数组中返回选定的元素 arrayObject.slice(start,end)

start 必选 如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。
end 可选 规定从何处结束选取

1
2
3
4
5
6
7
8
9
10
11
12
13
14
function Test() {
    var arr = new Array(3);
    arr[0] = "George";
    arr[1] = "John";
    arr[2] = "Thomas";
    arr[3] = "James";
    arr[4] = "Adrew";
    arr[5] = "Martin";
    var s="hello world";
    document.write(arr.slice(1) + "<br />")
    document.write(arr.slice(2, 4) + "<br />")
    document.write(s.slice(1, 4) + "<br />")
    document.write(s.slice(-3) + "<br />")
}

结果:

John,Thomas,James,Adrew,Martin
Thomas,James
ell
rld

4、js种的原始值(undefined,null,布尔值,数字,字符串)

1
2
3
4
5
function Test() {
    var s = "test";
    var s1="test";
    if(s===s1){}//true
}

引用类型:对象,数组

1
2
3
4
5
6
7
8
9
10
11
12
function Test() {
   var o={x:1};
   var p={x:1};
   if(o===p){}//false
   var a=[1,2,3];
   var b=[1,2,3];
   if(a===b){};//false
   var c=[];
   var d=c;
   b[0]=1;
   if(c==d){};//true
}

5、类型转化

1
2
3
4
5
6
7
8
9
10
11
//值->转成字符串->数字->布尔
//undefined->"undefined"->NaN->false
//null->"null"->0->false
//true->"true"->1->true
//false->"false"->0->false
//""(空字符串)->""->0->flase
//"1.2"(非空,数字)->"1.2"->1.2->true
//"one"(非空,非数字)->"one"->NaN->true
//0->"0"->0->false
//NaN->"NaN"->NaN->flase
//1->"1"->1->true

6、运算符

1)in运算符

1
2
3
4
5
6
7
function Test( ) {
    var o={x:1,y:2};
    //左边为字符串或可转成字符串,右边为一个对象,左边的属性存在于右边对象,则返还ok
    if("x" in o){}//true
    if("z" in o){}//false
    if("toString" in o){}//true,对象继承了toString方法
 }

2)instanceof

1
2
3
var d=new Data();
if(d instanceof Date){}//true 左侧对象为右侧类的实例,则返回true
if(z instanceof Date){}//false

3)delete

1
2
3
4
5
function Test( ) {
    var o={x:1,y:2};
    delete o.x;
    if("x" in o){}//false
 }

7、for in

1
2
3
4
5
6
function Test( ) {
    var o={x:1,y:2};
    for(i in o){
        console.log(o[i]);
    }
 }

8、try..catch..finally

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
function Test( ) {
    try{
        var n=Number(prompt("请输入一个正整数"));
        var f=factorial(n);
        alert(n+"!="+f);
    }
    catch(ex){
        alert(ex);
    }
    finally{
        aler("不管是否有异常,都显示");
    }
}
function factorial(x) {
    if(x<0){
        throw new Error("x不能为负数");
    }
    if(isNaN(x)){
        throw new Error("你输入的不是一个数字");
    }
    for(var f=1;x>1;x--){
        f*=x;
    }
    return f;
 }

9、width语句

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function Test() {
    // document.forms[0].username.value = "aa";
    // document.forms[0].pwd.value = "aa";
    // document.forms[0].qq.value = "aa";
    // document.forms[0].realname.value = "aa";
    // document.forms[0].tel.value = "aa";
 
    //简写方式
    with(document.forms[0]){
        username.value="aa";
        pwd.value="aa";
        qq.value="aa";
        tel.value="aa";
        realname.value="aa";
    }
}

10、js里面对象设置属性和方法

1
2
3
<h2 id="title"></h2>
<h3 id="des"></h3>
<div id="price"></div>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function Product() {
    this.title = "iphone8",
    this.price = 20,
    this.des = "这是最新的产品"
}
Product.prototype = {
    buy: function () {
 
    },
    getDetail: function () {
 
    }
};
onload = function () {
    var pro = new Product();
    document.getElementById("title").innerHTML = pro.title;
    document.getElementById("des").innerHTML = pro.des;
    document.getElementById("price").innerHTML = pro.price;
}

JS你可能还不知道的一些知识点(一)

JS你可能还不知道的一些知识点(一)的更多相关文章

  1. html你可能还不知道的一些知识点

    一.标签语义化 html标签语义化是让大家直观的认识标签和属性的用途和作用,好处最主要的是对搜索引擎友好. Eg: 1.如果你想在页面中突出"奥巴马"这三个字,让搜索引擎重视它,如 ...

  2. CSS你可能还不知道的一些知识点

    一.特殊选择器 1.* 用于匹配任何的标记 2.> 用于指定父子节点关系 3.E + F 毗邻元素选择器,匹配所有紧随E元素之后的同级元素F 4.E ~ F 匹配所有E元素之后的同级元素F 5. ...

  3. [转载]或许您还不知道的八款Android开源游戏引擎

    或许您还不知道的八款Android开源游戏引擎         分类:             技术文章              2010-08-04 20:27     17430人阅读     ...

  4. 你可能还不知道的关于JavaScript类型的细节?

    类型 七种类型: Undefined Null Boolean String Number Symbol Object Undefined.Null 阅读问题:为什么有的编程规范要求使用void 0 ...

  5. redis-cli中那些或许我们还不知道的一些实用小功能

    玩过redis的朋友都知道,redis中有一个叫做redis-cli的小工具,我们可以利用它在test和develop环境下进行高效的模拟测试,然而在现实环境中, 我们只知道直接键入redis-cli ...

  6. 或许您还不知道的八款Android开源游戏引擎

    很多初学Android游戏开发的朋友,往往会显得有些无所适从,他们常常不知道该从何处入手,每当遇到自己无法解决的难题时,又往往会一边羡慕于iPhone下有诸如Cocos2d-iphone之类的免费游戏 ...

  7. jdk1.8新特性,还不知道的朋友还不看看,1.9都快出来了

    一.接口的默认方法 Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可,这个特征又叫做扩展方法,示例如下:代码如下:interface Formula {     ...

  8. iPhone 上你可能还不知道的小技巧

    用了这么久的 iPhone,这些技巧你可能都还不知道哦. 1.怎么用耳机切歌? 将耳机的话筒部位的中间(平时暂停用的,按一下)连按两下 即可. 连按两下,下一首. 连按三下,上一首. 2.摇一摇,相当 ...

  9. 大部分程序员还不知道的 Servelt3 异步请求,原来这么简单?

    前言 博文地址:https://sourl.cn/URptix 当一个 HTTP 请求到达 Tomcat,Tomcat 将会从线程池中取出线程,然后按照如下流程处理请求: 将请求信息解析为 HttpS ...

随机推荐

  1. UltraISO制作系统ISO镜像

    一.简介 UltraISO是一款功能强大而又方便实用的光盘映像文件制作/编辑/转换工具,它可以直接编辑ISO文件和从ISO中提取文件和目录,也可以从CD-ROM制作光盘映像或者将硬盘上的文件制作成IS ...

  2. Posters TopCoder - 1684

    传送门 分析 首先我们不难想到1e4^5的暴力枚举,但显然这是不行的,于是我们考虑对于每一张海报肯定有一种最优情况使得它至少有一条边要么靠着板子的边要么靠着之前的某一张海报的边,这样我们便可以将复杂度 ...

  3. WarTransportation TopCoder - 8404

    传送门 分析 我们高兴的发现数据范围特别小,所以我们可以随便搞.因为一共只砍掉一条路,所以我们先算出对于任意一个点如果将它的出边割掉一条则它到达终点的最坏情况的最短距离是多少,然后我们从终点向起点反着 ...

  4. Entity Framework Code-First(21):Automated Migration

    Automated Migration: Entity framework 4.3 has introduced Automated Migration so that you don't have ...

  5. C++文件流打开标识符.RP

    ofstream流,以ios::app打开(或者“ios::app|ios::out”),如果没有文件,那么生成空文件:如果有文件,那么在文件尾追加.以ios::app|ios::in打开,不管有没有 ...

  6. [转载]应用 Valgrind 发现 Linux 程序的内存问题

    应用 Valgrind 发现 Linux 程序的内存问题 如何定位应用程序开发中的内存问题,一直是 inux 应用程序开发中的瓶颈所在.有一款非常优秀的 linux 下开源的内存问题检测工具:valg ...

  7. JavaScript CheckBox实现全选和部分选择

    <html> <head> <script> function BatchAddToBasket() { var questionNums = ''; var ch ...

  8. Liunx在开机后,自动启动openldap、radius、memcached等程序的shell脚本

    以下是脚本命令: #!/bin/bash #说明:此文件需放在/etc/rc.d/init.d/目录下,然后编辑文件/etc/rc.d/rc.local,在里面添加bash /etc/init.d/A ...

  9. 写一个Android输入法02——候选窗、转换

    上一篇介绍了完成Android输入法的最小化步骤,它只能将按键对应的字符上屏.一般的东亚语言都有一个转换的过程,比如汉语输入拼音,需要由拼音转成汉字再上屏.本文将在前文基础上加入完成转换过程所必需的候 ...

  10. Luogu2114 [NOI2014]起床困难综合症 【位运算】

    题目分析: 按位处理即可 代码: #include<bits/stdc++.h> using namespace std; ; int n,m; int a[maxn],b[maxn]; ...