zoukankan      html  css  js  c++  java
  • js点滴知识(1) -- 获取DOM对象和编码

      在今天的工作中发现了一些小的问题,在网上查了一下,才知道自己的js才是冰山一角,以后要虚心向他人学习,要虚怀若谷.

      发现一:js获取DOM对象与jquery的区别

      先前总以为,二者是一样的,最近才知道,二者是不同的:

      前者使用var jsTab = document.getElementById("tab");//其中tab为所选择dom对象id的属性值.

      后者var jqTab = $("#tab");//不仅需要id属性值,还需要加上#,这是jquery所规定的.

      用原生js获取的是DOM对象,而用jquery是对DOM对象包装后的对象.那么jquery的对象如何转换成DOM对象呢?很简单 jqTab.get(0)即可,即获取第一个数组元素即可,虽然jquery对象并不是数组,不过这里可以理解为数组.反过来呢?jqTab=$(jsTab).很简单吧,各位.

      发现二:encodeURIComponent与encodeURI的区别

      在向后台传递参数时,需要对中文进行编码时需要用到js中的这两个函数,那么这两者有神马区别呢?从网上查到的结果是这样的:

    1 encodeURIComponent(params)该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。
    2 其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。
    1 encodeURI(params)该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。
    2 该方法的目的是对 URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?:@&=+$,#

      以上出自w3cschool之encodeURIComponent,w3cschool之encodeURI.也就是说,对于;/?:@&=+$,#这些也需要编码时就需要前者了.那么两者用途在何处?前者用于POST传递参数时,后者用于url跳转.个人理解,不正确请各位赐教.

  • 相关阅读:
    Flask程序相关配置加载的三种方式
    Redis数据库在windows系统下的安装及使用
    Redis数据库介绍
    python中模块的制作
    4.ORM框架的查询
    3.ORM框架一对多的关系及使用
    2.ORM框架添加,修改,删除操作
    1.ORM介绍,基本配置及通过ORM框架创建表
    4.集合
    3.字典
  • 原文地址:https://www.cnblogs.com/geyifan/p/3267912.html
Copyright © 2011-2022 走看看