1. 程式人生 > >一種很帥的JS程式碼書寫方式

一種很帥的JS程式碼書寫方式

提醒:本文最後更新於 3776 天前,文中所描述的資訊可能已發生改變,請謹慎使用。

最近在Dron的UCRen網站看到一種很帥的JS寫法,記錄一下。

UCRen是下面這樣引入widget的(摘自這個頁面):

<script type="text/javascript" src="../../ucren-engine/cache-boot.js?skin=qq">
  import webui.FileInput;
  import renderfactory.FormRenderer;
</script>

第一眼看到這段程式碼,我還在想這樣寫JS語法分析器不報錯才怪,難道是讓window.onerror返回true幹掉了瀏覽器的錯誤提示?這樣也太不和諧了吧!今天仔細看了看才明白了,這個script標籤是有src屬性的,這樣寫標籤裡的內容會被忽略掉,不會執行也不會報錯。在src鏈入的cache-boot.js裡可以用:

var scripts = document.getElementsByTagName("script");
var code = scripts[scripts.length-1].innerHTML;

來得到那些神奇的程式碼,然後用正則解析成正常的script標籤就OK了。原理不復雜,不過很有用。可以用它寫出一些很有趣的程式碼來。

--EOF--

提醒:本文最後更新於 3776 天前,文中所描述的資訊可能已發生改變,請謹慎使用。

相關推薦

JS程式碼書寫方式

提醒:本文最後更新於 3776 天前,文中所描述的資訊可能已發生改變,請謹慎使用。 最近在Dron的UCRen網站看到一種很帥的JS寫法,記錄一下。 UCRen是下面這樣引入widget的(摘自這個頁面): <script type="text/javascript" src="../../

自動執行js程式碼方式

最近在看jquery,發現他居然能自動執行js程式碼,於是就查了下,收集了幾種常用的實現方法 jquery的方法 使用場景:任何需要執行的js特效 $(document).ready(fu

Android:Toast,android studio提供的好的提醒方式

Toast:android studio提供的一種非常好的提醒方式,即提示資訊,以短小資訊的形式通知給使用者,在一段時間之後會自動消失。 下面我們通過一個示例進行解釋它的用法 示例:設定一個按鈕,點選按鈕的時候顯示提示資訊。 步驟: 第一步:在layout的檔案中加入

insert into 的另添加插入新行方式

value insert lang sharp 實例 tab 多行 mon brush 語法 1 插入一行 insert into table (field1,field2.....) select value1,value2........;    2 插入多行

Django:Error: [WinError 10013] 以訪問許可權不允許的方式做了一個訪問套接字的嘗試。(殺佔用埠程序)

Error: [WinError 10013] 以一種訪問許可權不允許的方式做了一個訪問套接字的嘗試。 1.啟動伺服器的時候提示埠被佔用,Error: [WinError 10013] 以一種訪問許可權不允許的方式做了一個訪問套接字的嘗試。  解決方案 1.查找出被佔用的

java實現快速排序常規的,是左程雲的方式

java實現快速排序: 一:先來一個常規快排: 這個方式就是我們的基準值一直在兩個邊界徘徊,要麼在less的較大邊界,要麼是在more的小邊界,其實就是在居中位置徘徊。 package chapter1; //來一個快排,常規快排 public class QuickSort {

撈的求最大公約數和最小公倍數的方法

void main(){   int m, n, c, r, t, x;   printf("請輸入兩個整數\n");        //輾轉相除法   scanf_s("%d,%d",&m,&n);   x = m * n;              

定位android HAL程式碼位置的方法

一種定位android HAL程式碼位置的方法 2017年04月07日 23:33:20 feiniao8651 閱讀數:1044 背景 裝置廠商一般會在Android HAL層做自己定義的實現,但是不同廠商的路徑不同,在沒有文件的情況下,查詢對應的原始碼實現就要花費

Error: [WinError 10013] 以訪問許可權不允許的方式做了一個訪問套接字的嘗試。

該錯誤其實是Django的埠號被佔用,解決步驟如下:1.找出佔用的埠號:輸入netstat -ano|findstr 8000  2.找出埠號對應的伺服器:tasklist if indstr 3144 i 3.終止埠號對應的程序:輸入taskkill /pid

軟體開發人員是棒的職業選擇的五大理由

5 REASONS 1 Creative. If you ask people to name creative jobs, chances are they will say things like writer, musician or painter. But few people know that

40常用的js程式碼

1. oncontextmenu="window.event.returnValue=false" 將徹底遮蔽滑鼠右鍵 <table border oncontextmenu=return(false)><td>no</table> 可用於

新的進入容器的方式: WebSocket + Docker Remote API

眾所周知,容器是基於作業系統核心的一種輕量級的虛擬化技術。其可以類比於虛擬機器,但其本身並不是虛擬機器。在傳統的虛擬機器使用場景中,每個使用者都會通過堡壘機,根據自己被分配的許可權,登入某些機器的某些賬號。當應用部署逐漸轉移到基於容器技術的PaaS平臺上後,讓使用者進入容器進行觀察、除錯應用已經成

什麼是 Vagrant (新的開發環境搭建方式)要關注新東西了。

Vagrant是一款用來構建虛擬開發環境的外掛工具,可以簡化虛擬機器配置和管理。它底層支援VirtualBox、VMware、AWS等,非常適合使用php/python/ruby/java語言開發web應用,“程式碼在我機子上執行沒有問題”這種說辭將成為歷史。 https://blog.csdn

webstorm的live templates快速編輯功能,讓你的css JS程式碼書寫速度飛起來

前言: Emmet的前身是大名鼎鼎的Zen coding,如果你從事Web前端開發的話,對該外掛一定不會陌生。它使用仿CSS選擇器的語法來生成程式碼, 大大提高了HTML/CSS程式碼編寫的速度,比如下面的演示:    但是對於我們來說這遠遠不夠,我還想寫css js呢,有

OSError: [WinError 10013] 以訪問許可權不允許的方式做了一個訪問套接字的嘗試

建立mock介面,執行時報錯。 通過命令檢視是否存在端口占用的問題。cmd下輸入 netstat -ano|findstr 8080,找出8080埠對應的PID程序為4228。 輸入tasklist |findstr 4228找出程序對應的詳細資訊。 解決辦

dp 電子科大本部食堂的飯卡有詭異的設計,即在購買之前判斷餘額。

#include<stdio.h> #include<string.h> #include<iostream> #include<algorithm> #define N 1005 using namespace std;

6的程式碼 EntityUtils ,將陣列資料轉換為實體類

package cn.fht.carsys.component.util.common; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.lang.reflect.Construct

LeetCode53. Maximum Subarray好的做法

Find the contiguous subarray within an array (containing at least one number) which has the largest sum. For example, given the array

常見的微控制器架構實現方式說明

#define num 3 //任務的數量,和func_x中形引數量需對應 typedef void (*p)(void); //定義一個函式指標 void func_1(void); //對你的任務1進行宣告 void func_2

簡便的呼叫webservice的方式

JAVA部分:package com.dhcc.utils;/** * 通用介面 */import java.io.IOException;import java.util.Map;import org.ksoap2.SoapEnvelope;import org.ksoap